负面的背后变量whitepsace?

时间:2018-02-15 21:20:47

标签: java regex

如果x之前没有==之间可能的空格,我怎样才能与x匹配?

匹配度:

= abc x 

不匹配:

abc =      x

这个正则表达式 如果(?<!=)\bx\b=之间没有空格,x可以正常工作,但无法修改以考虑空格,因为后瞻断言不能是可变长度。

1 个答案:

答案 0 :(得分:3)

对于Java,您可以使用负面预测,因为Java不支持动态长度的lookbehind断言:

^(?!.*=\h*x).*x

RegEx Demo

  • ^:开始
  • (?!.*=\h*x):断言我们没有=后跟0个或更多空格,x在我们前面
  • .*x:在字符串
  • 中的任意位置匹配x