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

时间:2014-02-11 14:36:46

标签: 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.{3}\|/g

但是,我需要一种能够在我的正则表达式中否定。{3} \ | 的方法,因为我需要找到一个没有后跟3个字符和管道的换行符。

我确实浏览了网站,并且我读到我可能不得不使用负面前瞻来实现否定,但我无法取得任何成功。

有没有办法在JavaScript中完成此操作?

感谢。

1 个答案:

答案 0 :(得分:1)

您需要在此处使用negative lookahead

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