我知道这里已经有很多类似的问答,但我就是无法将它们整合在一起。
我想要的是使用正则表达式匹配特定的函数调用,例如:
Lib.myfunction( arg0, arg1,
arg2, arg3 )
我正在寻找Lib.myFunction
特定的函数,它不必完全通用。每个这样的函数调用后面都有额外的空行。
稍微额外一点的是如果它可以用换行符来终止,然后是可选的空格,然后是换行符,因为编辑器倾向于添加空格来与前一行的文本对齐。
您是否知道正则表达式应该是什么样子的?
答案1
Lib\.myfunction\s*\(\s*\S+(?:,\s*\S+)*\s*\)
解释:
Lib\.myfunction # literally
\s* # 0 or more spaces
\( # opening parenthesis
\s* # 0 or more spaces
\S+ # 1 or more NON spaces
(?: # start non capturing group
, # a comma
\s* # 0 or more spaces
\S+ # 1 or more NON spaces
)* # end group, may appear 0 or more times
\s* # 0 or more spaces
\) # closing parenthesis