首页 > 解决方案 > 正则表达式限定`n()`

问题描述

我想替换n()dplyr::n(). 我想匹配像这样的条目

n()
 n()
a = n()
b = runif(n())

匹配条目

function()
dplyr::n()

以下正则表达式有效,但我想知道是否有更好的方法。

这里有两种使用负面回溯的不成功方法。第一个(寻找非B边界,未命中dplyr::n(),而第二个未命中function()

注意:我对正则表达式的风格很灵活。我最喜欢使用 Atom 替换 repo 中的多个文件。(这并不是真正的约束,但修改后的代码是 R,它使用PCRE。)上面的替换模式是为regex101编写的。

标签: pcrenegative-lookbehind

解决方案


@melpomene 对上述评论的回答:

(?<![\w:])n\(\)

推荐阅读