トップページに戻る    次の正規表現パズルへ    前の正規表現パズルへ

2-24 行頭から文字がN回現れるまでマッチ

正規表現パズル

行ごとで、
行頭から、文字Xが3回現れるまでマッチさせる。

検索前


検索後


対象データ

X123456XX
XXX123456
X123X456X
X123XX456X789
123456
123X456
123X456X
XXXXXX
1X2XXXX


正規表現

^([^X]*X?){1,3}


解説

文字Xが0個の場合、
文字Xが1個の場合、
文字Xが2個の場合、
文字Xが3個の場合、
文字Xが4個以上の場合、
で場合分けして考えると、分かりやすいでしょう。

場合分けは、数学でよく使われる方法ですが、
正規表現でも使用できます。

なぜ場合分けが必要か