JavaScript正则表达式中的否定匹配

JavaScript正则表达式中的否定匹配,javascript,regex,regex-negation,Javascript,Regex,Regex Negation,我还有一个javascript正则表达式问题 我需要匹配任何不以三个字母和一根管子开头的行 例如,在 some text that doesn't matter Test1 RandomLine C| FName Test1、RandomLine、C |、FName必须全部匹配 但是, some text that doesn't matter TST| MST| RAD| 不能匹配 注意:上述测试用例总共是一个字符串,而不是3个不同的字符串 我试图提出逻辑,这就是我得出的结论: /\n.{

我还有一个javascript正则表达式问题

我需要匹配任何不以三个字母和一根管子开头的行

例如,在

some text that doesn't matter
Test1
RandomLine
C|
FName
Test1、RandomLine、C |、FName必须全部匹配

但是,

some text that doesn't matter
TST|
MST|
RAD|
不能匹配

注意:上述测试用例总共是一个字符串,而不是3个不同的字符串

我试图提出逻辑,这就是我得出的结论:

/\n.{3}\|/g
但是,我需要一种方法来否定正则表达式中的{3}\,因为我需要找到一个不后跟3个字符和管道的换行符

我确实浏览过这个网站,我读到我可能不得不使用负面表情来实现否定,但我无法实现任何成功

有没有办法用JavaScript实现这一点


谢谢。

您需要在此处使用
消极前瞻

^(?!((TST|MST|RAD)[|]|some text)).*$

好吧,这很奇怪。我试过类似的方法,但对我来说不起作用。现在好像没事了。我修改了您建议的内容以匹配\n和3个字符,并且它工作正常。谢谢你的帮助依赖“一些文字”不是这里的方式。与严格使用正则表达式相比,这在编程上要简单100亿倍,也要优雅得多。我将正则表达式修改为/\n(?。{3}\|).*/g,它实现了我想要的结果。但是,你有什么建议?