RegEx - 函数的匹配参数名称

时间:2011-05-29 20:09:57

标签: regex function parameters match

var str:String = "myFunction(strParam:String = \"myFunc()\", objParam:Object = {x:50, y:50}):void";

我想匹配上面字符串中函数的参数名称:strParam,objParam。

尝试将这些参数名称匹配为括号内的冒号之前的单词失败。使用环绕/我的逻辑出现问题,因为可能有一个内部设置括号和带有冒号的对象属性,如上面的字符串所示。

我是如何使用正则表达式获取这些参数名称的?

2 个答案:

答案 0 :(得分:0)

有点做作,使用rubular。

\(.*?([a-zA-Z]+):[a-zA-Z]+

请参阅rubular

答案 1 :(得分:0)

首先尝试删除内部括号字符串。

str.replace(/{.*?}/, "");

然后你可以根据冒号进行匹配。或者,如果还不够,请尝试进一步删除它,删除任何不必要的信息。