Python 中的正则表达式:允许使用双引号和单引号

Regex in Python: Allow double and single quotation marks

使用 Python 脚本,我想从我的 Dart 代码(字符串)中提取参数。

当我有AppLocalizations.of(context).translate("translationKey")时,我想得到translationKey

以下代码对双引号 ("...") 非常有效,但我无法使其对单引号 ('...') 有效。

for line in dartFile:
    quotes = re.findall('AppLocalizations.of\(context\).translate\("([^"]*)"\)', line)

我怎样才能让 AppLocalizations.of(context).translate('translationKey') 正常工作?

这应该适合你

for line in dartFile:
    quotes = re.findall("""AppLocalizations\.of\(context\)\.translate\([\"']([^\"']*)[\"']\)""", line)

你可以使用"""更自由的写字符串,甚至不用\n也可以跳到下一行。