RegExp匹配点但不是,例如

时间:2016-02-20 14:13:51

标签: javascript regex

我希望匹配这个字符串中的第三个点

“测试,等等,例如和”

因此,找到第一个不是“即”或“例如”的点

到目前为止,我有

(?!i\.e|e\.g)(\.)

但它似乎仍然捕捉所有点

2 个答案:

答案 0 :(得分:5)

不同的想法......

1。)匹配非word boundary

处的点
\.\B

See demo at regex101

2。)或者如果它始终是最后一个字符,只需使用结束anchor

\.$

Demo at regex101

3。)但是如果你想将最后一个点与前面的字符匹配,请使用lookahead

\.(?![^.]*\.)

在任何一个点看起来如果没有另一个点在前面(中间有任意数量的[^.]* 非点)。

Demo at regex101

答案 1 :(得分:0)

Javascript不支持后视,这对语言来说是一项艰巨的任务。如果你问我,我建议你自己遍历文本流并获得点数,这很简单,并且可能比正则表达式快得多。