查找函数调用的正则表达式

问题描述 投票:0回答:1

我正在尝试查找对函数的所有调用

$t

我尝试过这个表达
/\$t\([^)]+\)/g
但如果我在字符串中有一个
)
,这样就不起作用了

$t('Name (optional)')

其他可能的复数值可以是

$t('hello' + x)
$t("hello"  + x)
$t(`hello ${x}`)
$t(x)

我想我需要回顾一下? 谢谢你

javascript regex
1个回答
0
投票

好吧,对于任何处于这个位置的人来说,这就是我的解决方案

我使用这个表达式

/\$t\(.*/gm
来查找所有调用
$t
的地方,
然后我拆分
m.split('$t(')
(以防
$t
在那条线上被多次调用),
然后循环结果并使用
acorn-loose
(JavaScript 解析器/标记器)解析字符串,
然后找到第一个调用表达式并通过 switch 单独处理参数(字符串、变量等)。

© www.soinside.com 2019 - 2024. All rights reserved.