正则表达式:如何从函数中获取参数?

时间:2010-03-09 22:18:34

标签: regex

我正在从函数字符串中获取参数。例如,我的函数名为“translate”。所以我需要做的就是把所有内容都放在“translate(”和“)”之间。 有没有办法可以使用正则表达式来做到这一点?到目前为止,我有类似的东西:

"/translate\((?<keyName>*)\)/i"

不幸的是它没有用。有人可以帮我这个吗?

非常感谢!

1 个答案:

答案 0 :(得分:1)

translate\((.*?)\)将匹配整个函数调用并将参数捕获到反向引用1.如果要提取参数,可以将其替换为\1

如果您只想匹配您正在使用的参数和正则表达式引擎支持look-behinds / look-aheads,您可以使用以下参数:(?<=translate\().*?(?=\))