正規表現、正則表現(英:Regular Expression)とは、文字列の集合を表すための表現法である。形式言語理論の分野では正則表現、電算機上での文字列処理では正規表現と呼ばれる事が多い。
概要
正規表現を用いると、一定の規則に従った文字列の集合を一つの文字列で表現することができる。例えば、「Aから始まりZで終わる、アルファベットからなる10文字の文字列」の集合は、 A[a-zA-Z]{8}Z という風に表現できる。これを検索条件として指定すれば、ワイルドカードを使用するよりも詳細な検索が行える。
正規表現は文字列検索をするのに大変便利なツールだが、言語間・環境間の方言が非常に多いので、利用する際は注意が必要である。多くの言語・環境に搭載されている正規表現はPerl互換だが、特定の文字クラスが存在しなかったり、メタ文字の意味が違ったりしていることがあるのが事態を厄介にしている。なお、一部の記法は本来の正規表現の範囲から外れていることがある。
主な正規表現の例
- . - 任意の1文字にマッチする。
例:a.c → abc, aac, aあc, ... などにマッチ - [] - 括弧内に含まれる文字にマッチする。
例: [aAbB] → a, A, b, B にマッチ。
括弧内に「-」が含まれている場合、その前後の文字と、間の文字にマッチする。
例: [a-z] → a, b, c, ..., z にマッチ。 [a-cf-j] → a, b, c, f, g, h, i, j にマッチ。 - [^] - 括弧内に含まれない文字にマッチする。括弧内の「-」の扱いは[]と同じ。
例: [^a-z] → A, B, C, あ, い, う, ... などにマッチ - * - 直前の文字の0回以上の繰り返しにマッチ。
例: aab* → aa, aab, aabb, aabbb, ... などにマッチ - + - 直前の文字の1回以上の繰り返しにマッチ。
例: aab+ → aab, aabb, aabbbb, ... などにマッチ - ? - 直前の文字の0回、または1回の登場にマッチ。
例: aa? → a, aa にマッチ - () - 括弧内をグループ化する。
例: (ab)*c → c, abc, ababc, abababc, ... などにマッチ
関連動画
関連商品
関連項目
- ワイルドカード
- プログラミング関連用語の一覧
- UNIX
- Perl - hogeを検索する場合、「~/hoge/」とする
- grep - hogeを検索する場合、「'hoge'」とする
- JavaScript - Perlと同様。
- HTML - HTML5の規格に規定されている
携帯版URL:
http://dic.nicomoba.jp/k/a/%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE
http://dic.nicomoba.jp/k/a/%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE


ページ番号: 465521
リビジョン番号: 632574
読み:セイキヒョウゲン
初版作成日: 08/08/16 00:57 ◆ 最終更新日: 10/02/12 14:35
編集内容についての説明/コメント: 関連動画がほとんど関連してなかったので削除。入門動画を代わりに追加。
記事編集 / 編集履歴を閲覧 / Twitterで紹介





JASRAC許諾番号: 9011622001Y31015
ヘッダー:固定
ヘッダー:追従