我正在嘗試匹配在第一個字符和最后一個字符之間不包含特定字符串的字符串。這些字符串以列表形式出現,如下所示:
this
is
a
demo
可能還有更多。我已經寫信了
1(?!this|is|a|demo).*2
這是我的regex現場演示。它只匹配1demo12
,我也需要它匹配1demoo2
。
更多測試用例:
1this2 # do not want match
1is2 # do not want match
1a2 # do not want match
1demo2 # do not want match
1demoo2 # want match
1demo12 # want match
我嘗試使用Negative Lookahead
,但失敗了。
你可以用
查看regex演示。
Details:
^
-字符串開頭1
-a1
字符(?!(?:this|is|a|demo)2$)
—如果有this
、is
、a
或demo
后跟2
且字符串結尾緊跟在當前位置的右側,則匹配失敗的負向前看.*
-除換行符以外的任何零個或更多字符,盡可能多2
-a2
字符$
-字符串結尾。