VSCode - 查找并用正则表达式替换,但将单词保留在中间

Ahm*_*hin 7 regex visual-studio-code

我多次出现

AppLocalizations.of(context).translate('WORDING_STR')
Run Code Online (Sandbox Code Playgroud)

在我的代码中,我想更改为

LocaleKeys.WORDING_STR.tr()
Run Code Online (Sandbox Code Playgroud)

是否可以使用正则表达式来完成此操作,以便我可以将代码中的任何内容保留为 WORDING_STR?

例子:

替换AppLocalizations.of(context).translate('finish_status')LocaleKeys.finish_status.tr()

lep*_*sch 8

在 VSCode 中,尝试使用此正则表达式来查找出现的情况:

AppLocalizations\.of\(context\)\.translate\('(\w+)'\)
Run Code Online (Sandbox Code Playgroud)

还有这个要替换的:

LocaleKeys.$1.tr()
Run Code Online (Sandbox Code Playgroud)

解释

\w方法match a word character only。因为它包裹在括号中,所以capturing group我们可以反向引用它$1以使用第一组中捕获的单词来替换文本。请访问https://regex101.com/以获取各种正则表达式的详细说明。

截图

之前的截图 之后的截图