示例:
# Objects:
math =
root: Math.sqrt
square: square
cube: (x) -> x * square x
# Splats:
race = (winner, runnners...) ->
print winner, runners
我希望匹配cube
和race
(存储函数的变量/对象)。
我意识到我无法使用^\w
,因为它与后面的空格不匹配,例如cube
。
在这种情况下我应该使用什么正则表达式?
答案 0 :(得分:2)
使用您当前的示例,此模式将找到这些文本:
/\zs\S\+\ze\s*[:=]\s*(
它匹配文本,后跟任意数量的空格,然后是:
或=
,然后是任意数量的空格,然后是(
。我希望这就是你要找的东西。
我使用\S\+
代替\w
,因为如果像-, # etc.
这样的字符也可以用作变量名,我就不会知道。