我想用一些字符限制我的正则表达式,例如< > @#并且只允许出现一次|字符。到目前为止,我没有成功。
^([^<>@#]+[|]?)$
无法弄清楚如何将我的正则表达式限制为仅出现一次|炭。
答案 0 :(得分:2)
使用否定前瞻:
^(?!(?:[^|]*\|){2})[^<>@#]+$
请参阅regex demo
<强>详情:
^
- 字符串的开头(?!(?:[^|]*\|){2})
- 除|
以外|
[^<>@#]+
- 除<
,>
,@
,#
$
- 字符串结束。