-2

私はこの文字列を持っています: value268_generated_number

私は通常これを行います:^value.*_generated_number

「値」という単語の後の1、10、100という数字ではなく、正規表現と一致させるにはどうすればよいですか?

例えば:

  • value1_generated_number
  • value10_generated_number
  • value100_generated_number

式は、50000 までの生成された数値にも適合する必要があります。

4

1 に答える 1

2

否定先読みを使用できます:

^value(?!10{0,2}_).*?_generated_number

*また、量指定子を とともに使用する場合は注意が必要です.。通常、必要以上に一致します。*などの文字クラスに置き換えることをお勧めし\d*ます。安全のために、量指定子を遅延させました。

入力が常に形式value<digits>_<digits>の場合、最終的な式は次のようになります。

^value(?!10{0,2}_)\d*_\d+$
于 2013-03-20T15:53:17.847 に答える