Javascript 正则表达式 - 从字符串中获取函数名称

标签 javascript regex regex-group

我正在尝试从 javascript 中的字符串中获取函数名称。

假设我有这个字符串:

function multiply($number) {
    return ($number * 2);
}

我在 javascript 中使用以下正则表达式:

/([a-zA-Z_{1}][a-zA-Z0-9_]+)\(/g

但是,选择的是 multiply(。这是错误的。我想要的是单词 multiply 而没有 (,虽然正则表达式应记住,函数名称必须附加 (

我做不到。我怎样才能为此制作正确的正则表达式?我知道这不是我真正应该做的事情,而且它对错误非常敏感,但我仍然想尝试完成这项工作。

最佳答案

只需将最后一个 \) 替换为 (?=\()

`function multiply($number) {
    return ($number * 2);
}`.match(/([a-zA-Z_{1}][a-zA-Z0-9_]+)(?=\()/g) // ["multiply"]

关于Javascript 正则表达式 - 从字符串中获取函数名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47663648/

相关文章:

javascript - <div></p> 导致布局问题

javascript - vim 中语法高亮困惑/失败

.net - 正则表达式组字符串,其中分隔符可以使用两次(.net 正则表达式)

c# - 使用正则表达式忽略特定字符串

javascript - CKEditor 链接对话框删除协议(protocol)

javascript - 将文本框链接到由按钮运行的 JavaScript 方程

javascript - 如何识别和删除文本中的任何类型的项目符号

jquery - 如何通过在 Twig 中搜索正则表达式来替换字符串?

c# - C# 中的 RegEx 捕获组

javascript - 如何调整两个不同大小的不同模态