4

この問題に関してすでにStackOverflowにある回答を調べた後、私は見つけた中で最も正確な回答に落ち着きました。

Java正規表現:ネガティブな先読み

私はgskinnerに行き、それをテストしました。/foo/(?!.*\\bbar\\b).+パターン入力ボックスに入力し、正規表現の一致テキスト領域に次のように入力します。

/ foo / abc123doremi

/ foo / abc123doremi / bar / def456fasola

Gskinnerはこれらの両方を一致として認識しましたが、明らかにGskinnerが間違っているか、上記の正規表現パターンが正しくありません。何かご意見は?

4

1 に答える 1

6

\bbar\bテキストにが含まれているときに探しています/bar/

あなたが意味したのはおそらく\bbar\b(すなわち/foo/(?!.*\bbar\b).+

「duplicate \」は、Java文字列リテラル内でのみ必要であることに注意してください。そのため、Javaで正規表現を作成するのは少し面倒です。

于 2012-12-20T07:55:10.220 に答える