SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

正規表現入門

正規表現の入門(2)
難しいメタ文字

正規表現の難しいメタ文字の使い方

  • このエントリーをはてなブックマークに追加

ダウンロード SourceCode (1.8 KB)

 正規表現を初めて使う方を対象に、具体的な検索と置換のサンプルを示しつつ、正規表現を解説していきます。第2回は難しいメタ文字について説明します。

  • このエントリーをはてなブックマークに追加

はじめに

 正規表現を初めて使う方を対象に、具体的な検索と置換のサンプルを示しつつ、正規表現を解説します。

 正規表現は、実行環境によって多少文法が異なりますが、本連載ではEmEditorの正規表現を使って解説していきます。EmEditorの正規表現の文法は、『EmEditor 使い方: 正規表現構文』を参照してください(Perl準拠です)。

 第2回となる本稿では、難しいメタ文字について解説します。

対象読者

  • 正規表現をはじめて使う方
  • 詳説 正規表現』を、まだ読んだことがない方

必要な環境

 EmEditor Professional Version 6.00.4で動作確認しました。その他、プログラム言語やSQL、テキストエディタなどでも応用できます。

 EmEditorでの正規表現を使う検索の仕方については、第1回を参照してください。

1. 最小マッチ

 量指定子の直後に使用し、マッチ回数が最も少ないマッチを優先するようにします。メタ文字は?です。ものぐさマッチ、控えめなマッチ、欲張りでないマッチとも呼ばれます。

 量指定子で、最小マッチを指定しない正規表現と、最小マッチを指定した正規表現の、検索結果を比較してみましょう。

検索対象
aabbcc
aabbaabbcc
bb
検索で使う正規表現1
^[ab]*[bc]
検索結果1
検索結果1
検索で使う正規表現2
^[ab]*?[bc]
検索結果2
検索結果2
検索で使う正規表現3
^[ab]+[bc]
検索結果3
検索結果3
検索で使う正規表現4
^[ab]+?[bc]
検索結果4
検索結果4
検索で使う正規表現5
^[ab]?[bc]
検索結果5
検索結果5
検索で使う正規表現6
^[ab]??[bc]
検索結果6
検索結果6

 量指定子(範囲指定繰り返し制御)で、最小マッチを指定した正規表現と、最小マッチを指定しない正規表現の、検索結果を比較してみましょう。

検索対象
aabbcc
aabbaabbcc
aabc
aaaab
bb
検索で使う正規表現1
^[ab]{2,}[bc]
検索結果1
検索結果1
検索で使う正規表現2
^[ab]{2,}?[bc]
検索結果2
検索結果2
検索で使う正規表現3
^[ab]{2,4}[bc]
検索結果3
検索結果3
検索で使う正規表現4
^[ab]{2,4}?[bc]
検索結果4
検索結果4

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
2. 肯定先読み

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
正規表現入門連載記事一覧
この記事の著者

山岸 賢治(ヤマギシ ケンジ)

趣味が競技プログラミングなWebエンジニアで、OracleSQLパズルの運営者。AtCoderの最高レーティングは1204(水色)。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/3247 2009/05/25 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング