Java Regex否定前瞻

Thr*_*eaT 4 java regex

在查看StackOverflow上关于此问题的答案之后,我找到了最准确的答案:

Java正则表达式:否定前瞻

我去了gskinner并测试了它.我/foo/(?!.*\\bbar\\b).+在正则表达式匹配文本区域中放入了模式输入框和以下内容:

/富/ abc123doremi

/富/ abc123doremi /酒吧/ def456fasola

Gskinner认为这两者都是匹配,但Gskinner错误或上面的正则表达式都不正确.有什么想法吗?

Joa*_*uer 6

您正在寻找\bbar\b文本包含的内容/bar/.

你的意思可能是\bbar\b(即/foo/(?!.*\bbar\b).+)

请注意,只有 Java String文字内部需要"复制\" .这使得在Java中编写正则表达式有点痛苦.