0

我正在尝试解析带有负前瞻的行,但我无法理解它。

所以,如果我有一条线,例如int a = sincos(a, &a);

我如何使用正则表达式来解析上面的行,使其匹配a除带有的行之外的所有行&

谢谢。

4

3 回答 3

1

我认为您实际上对这里的负面回顾感兴趣。您希望其实例a前面没有&.

\b(?<!&)a\b

此模式查找a由单词边界分隔\b且前面没有紧跟 & 符号的实例(?<!&)

包括单词边界可以防止a在其他单词中间进行匹配,否则您将有 5 个匹配项,如下所示:

var a = calculate(a, &a);
于 2012-09-24T16:39:32.743 回答
1

这是要找的东西吗?

除了 & 之外的任何东西上的非捕获组,并且有一个单独的“a”组

于 2012-09-24T16:41:40.247 回答
0

这个会做你想做的:

/(?<!&)a/i

于 2012-09-24T16:36:57.067 回答