Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript正则表达式匹配帮助_Javascript_Regex - Fatal编程技术网

javascript正则表达式匹配帮助

javascript正则表达式匹配帮助,javascript,regex,Javascript,Regex,我想编写一个与“()”匹配一次的正则表达式: hello() hello(asd, 2) hello(asd,sad)) 也就是说,第一个和第二个应该匹配,而不是第三个 同时()必须位于末尾,以便: hello(asd)q hello(asd)- 不相配 换句话说,我希望正则表达式帮助我知道字符串是否是有效的函数调用,以便我可以对其使用eval()。 有人能帮帮我吗。谢谢。这个应该可以 /(^|\s+)\w+\([^)]?\)$/ 或者如果函数调用是字符串中的唯一代码 /^\s*\w+\(

我想编写一个与“()”匹配一次的正则表达式:

hello()
hello(asd, 2)
hello(asd,sad))
也就是说,第一个和第二个应该匹配,而不是第三个

同时()必须位于末尾,以便:

hello(asd)q
hello(asd)-
不相配

换句话说,我希望正则表达式帮助我知道字符串是否是有效的函数调用,以便我可以对其使用eval()。 有人能帮帮我吗。谢谢。

这个应该可以

/(^|\s+)\w+\([^)]?\)$/
或者如果函数调用是字符串中的唯一代码

/^\s*\w+\([^)]?\)$/
这应该可以

/(^|\s+)\w+\([^)]?\)$/
或者如果函数调用是字符串中的唯一代码

/^\s*\w+\([^)]?\)$/

您可能也希望在开始时使用
^
。很好的一点-或者可能是(^\s+)以允许函数调用不占用整条线您可能也希望在开始时使用
^
。很好的一点-或者可能是(^\s+)以允许函数调用不占用整条线您使用
eval
?你可以完全避免使用它,如果你调用的函数和你传递的参数在全局范围内或只是原语,这就特别容易了。我想让用户输入一个文本字段hello(“peter”),它就会被调用。Eval是这里唯一的方法。
Eval
不是唯一的方法,但我不会强调这个论点,因为这不是什么大问题。你使用
Eval
有什么原因吗?你可以完全避免使用它,如果你调用的函数和你传递的参数在全局范围内或只是原语,这就特别容易了。我想让用户输入一个文本字段hello(“peter”),它就会被调用。Eval是这里唯一的方法。
Eval
不是唯一的方法,但我不会强调这个论点,因为这不是什么大问题。