我需要在我的正则表达式匹配器中实现正负范围。
正面范围看起来并不困难:
[1-3] == (1|2|3)
但我不明白如何将负范围[^ 1-3]转换为简单的正则表达式字符串。
有可能吗?
谢谢!
更新
不。似乎这是不可能的。
好的,在这种情况下,正则表达式库如何处理负范围?
答案 0 :(得分:1)
如果你使用的正则表达式引擎支持负向前瞻,你可以这样做:
(?!1|2|3).
?!
是负前瞻运算符。它说“这个表达式后面的字符必须与此表达式不匹配。”它在不推进光标的情况下进行否定匹配。接下来是.
,表示任何字符。