✉️
正規表現の基本三演算について
正規表現は 3 つの基本演算として「連接」、「選択」、「繰り返し」があります。3 つの基本演算を組み合わせることでいろいろな正規表現を作ることができます。
連接
二つの正規表現
- 例
はABC とA とB の文字が順番に繋げられています。C
選択
二つの正規表現
1 文字だけの場合は[](文字クラス)を使うことができます。
- 例
という正規表現があるときabcd|ABCD またはabcd を表します。ABCD
とa|b は同じ意味です。[ab]
とx とy の選択はz や[xyz] と書くことができます。[x-z]
繰り返し
「*」を使うことで任意の長さの繰り返しを表現します。
- 例
は任意長のアルファベット列を表現します。[A-Za-z]*
演算の結合順位
演算の結合順位は、「どの演算から評価するか」を表します。
結合順位は下記の順番で評価されます。
ある演算を優先的に評価したい場合は
- 例
という正規表現を繰り返したい場合はhoge|fuga と表します。(hoge|fuga)*
と表すとhoge|fuga* という正規表現とhoge という正規表現の連接を表します。fuga*
その他
今回は、詳しく記載しないですがシンタックスシュガーとして"+"や"?"などがあります。
Discussion