1

私は正規表現が初めてで、次で始まる任意の文字列に一致する式を作成しようとしています:

左括弧、3 桁の数字、その後に右括弧:

適合するものの例:

  1. (111)テスト
  2. (212) こんにちは
  3. (321)

動作しないはずです:

  • (a22)テスト
  • (小数点またはマイナスを含むもの)

これまでに作成したもの:

^(\d{3}^)* いくつかのオンライン正規表現テスト サイトでこれを試しましたが、一致が機能しません。

私は何を取りこぼしたか?

4

1 に答える 1

3

次のようなものを試すことができます^\(\d{3}\).*$

上記は、括弧で始まる任意の文字列と一致する必要があります (括弧は正規表現言語の特殊文字であるため、エスケープする必要があるため\、先頭に余分なものがあるわけではありません)、その後に 3 桁の数字と閉じ括弧 (これも特殊文字です。

正規表現は、文字列の末尾を見つける前に、他の文字の 0 回以上の繰り返しと一致しようとします。

括弧をエスケープする必要があることを除いて、正規表現は問題ないように見えますが、括弧パターンのゼロ回以上の繰り返しを探します。これは、 にも一致する可能性があることを意味しfoobarます。

于 2013-08-22T07:57:23.350 に答える