【发布时间】:2016-04-11 23:53:40
【问题描述】:
this Regex(\w*)\s*\([(\w*),]*\) 的目标是获取函数名及其参数。
例如,给定f1 (11,22,33)
正则表达式应该包含四个元素:
f1
11
22
33
这个正则表达式有什么问题?
【问题讨论】:
-
您似乎正在为参数捕获空格。看起来这个正则表达式可以捕获作为参数的逗号列表,因为
(\w*)甚至会指示零长度序列(空格)。并且这里函数的最后一个参数需要跟一个逗号;您可能需要为最后一个参数添加一个单独的组。 -
您不能在
[]中使用特殊字符。另外,不要为此使用正则表达式 -
我怀疑你可以在字符集中使用分组括号。
-
@hop:您可以使用特殊字符,但您可能不能使用分组。括号只是采用与预期不同的值,但
\w(一个特殊字符)确实有效。 -
@Evert:是的,就像劈头发一样会解决这个问题。
标签: regex