正则表达式匹配一堆字符 + 只匹配一个 |

本文关键字:一个 字符 正则表达式 一堆 | 更新日期: 2023-09-27 18:33:39

我有一个正则表达式,非常适合匹配以下内容。

^[a-z-&+/]

现在我想为"|"符号添加匹配项,但前提是它以单个"|"开头

真实结果

|hello
apple
test||test

错误的结果

||hello

我在 regex101.com 上尝试了很多方法 - 但我无法想出正确的正则表达式。

正则表达式匹配一堆字符 + 只匹配一个 |

这对我有用:

                      /^[|a-z-&+/](?!'|)/

也可以在字符集内部使用 |。检查我测试匹配 http://www.regexr.com/3coad。

这个正则表达式适用于您想要的:

^([a-z-&+'/]|'|(?!'|))

这从输入的开头开始,尝试找到任何原始字符([a-z-&+/])或|后不跟|(使用负前瞻)。

查看有关 regex101.com 的演示。