我正在尝试编写QRegExp
用于从 qmake 项目代码(* .pro 文件)中提取变量名的代码。
变量使用的语法有两种形式:
- $$VAR
- $${VAR}
所以,我的正则表达式必须处理这两种情况。我正在尝试以这种方式编写表达式:
\$\$\{?(\w+)\}?
但它没有按预期工作:对于字符串$$VAR
我有$$V
匹配,禁用“贪婪”匹配模式(QRegExp::setMinimal (true)
)。据我了解,在我的情况下,灰色模式可能会导致错误的结果。
那么,我做错了什么?
或者也许我应该使用贪婪模式而不关心这种行为:)
PS 变量名称不能包含空格和其他“特殊”符号,只能包含字母。