我有这个正在使用的正则表达式,但现在我需要添加一些东西。
^[|a-z-&+\/](?!\|)
我尝试了一些方法,但我无法提出解决方案。
我希望它添加到它,不匹配任何包含" ##"在任何位置。
这些匹配:
|test
test#test
apple
这些不匹配:
||test
test##test
apple##
答案 0 :(得分:2)
一种选择是在^
锚点(?!.*##)
之后的开头添加否定前瞻。
^(?!.*##)[|a-z-&+\/](?!\|)
由于Casimir et Hippolyte points out,因为#
不能是第一个字符,您可以在现有的前瞻中将此检查添加为an alternation:
^[|a-z-&+\/](?!\||.*##)
<强>解释强>
^[|a-z-&+\/]
- 匹配字符串开头的字符集中的单个字符(如果您使用的是多行标记,则匹配行)。(?!
- 开始否定前瞻\|
- 按字面匹配|
字符|
- 轮换;或.. .*##
- 检查##
字符)
- 关闭否定前瞻