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