0

Javaの正規表現を使用して、次のような文字列を照合およびキャプチャしています。

0::10000

解決策は次のとおりです。

(0::\d{1,8})

ただし、入力の一致は成功します

10::10000

同様に、それは間違っています。したがって、私は今持っています:

[^\d](0::\d{1,8})

つまり、数字以外の文字でリードする必要がありますが、最初のゼロの前に何らかの文字が必要であることを意味します。私が本当に望んでいること(そして私が助けを必要としていること)は、「数字がないか、まったくない状態でリードする」と言うことです。

結論として、最終的なソリューションの正規表現は次のように一致する必要があります。

0::10000
kjkj0::10000

次のものと一致しないようにする必要があります。

10::10000

このサイトは、誰かが助けたい場合に役立つかもしれません。

ありがとう。

4

1 に答える 1

4

否定的な後読みが必要です。

(?<!\d)(0::\d{1,8})

0::\d{1,8}これは、「」が先行しない一致を意味し\dます。

于 2011-01-28T18:29:26.780 に答える