私は正規表現が初めてで、次で始まる任意の文字列に一致する式を作成しようとしています:
左括弧、3 桁の数字、その後に右括弧:
適合するものの例:
- (111)テスト
- (212) こんにちは
- (321)
動作しないはずです:
- (a22)テスト
- (小数点またはマイナスを含むもの)
これまでに作成したもの:
^(\d{3}^)*
いくつかのオンライン正規表現テスト サイトでこれを試しましたが、一致が機能しません。
私は何を取りこぼしたか?
私は正規表現が初めてで、次で始まる任意の文字列に一致する式を作成しようとしています:
左括弧、3 桁の数字、その後に右括弧:
適合するものの例:
動作しないはずです:
これまでに作成したもの:
^(\d{3}^)*
いくつかのオンライン正規表現テスト サイトでこれを試しましたが、一致が機能しません。
私は何を取りこぼしたか?
次のようなものを試すことができます^\(\d{3}\).*$
。
上記は、括弧で始まる任意の文字列と一致する必要があります (括弧は正規表現言語の特殊文字であるため、エスケープする必要があるため\
、先頭に余分なものがあるわけではありません)、その後に 3 桁の数字と閉じ括弧 (これも特殊文字です。
正規表現は、文字列の末尾を見つける前に、他の文字の 0 回以上の繰り返しと一致しようとします。
括弧をエスケープする必要があることを除いて、正規表現は問題ないように見えますが、括弧パターンのゼロ回以上の繰り返しを探します。これは、 にも一致する可能性があることを意味しfoobar
ます。