【问题标题】:Why doesn't this simple QRegExp match?为什么这个简单的 QRegExp 不匹配?
【发布时间】:2015-11-24 23:02:18
【问题描述】:

很简单,这是失败的测试代码。

QRegExp BASIC_FORMAT ("^\\s*(.+?)\\s*,\\s*(.+)\\s*$");
QString test = "Catherine the Great, Szczecin 2/5/1729 to Saint Petersburg 17/11/1796";

qDebug ("%i", BASIC_FORMAT .indexIn (test));

这会打印 -1,但如果我将字符串复制到 regex101.com 之类的内容中(当然,我自己解决了双反斜杠),那么它会按预期匹配。

为什么在这种情况下 QRegExp 不匹配?

【问题讨论】:

    标签: regex qt qregexp


    【解决方案1】:

    QRegExp 不支持像+? 这样的非贪婪量词

    您可以改用[^,]+

    【讨论】:

      猜你喜欢
      • 2021-09-03
      • 2023-01-08
      • 1970-01-01
      • 2012-09-17
      • 1970-01-01
      • 1970-01-01
      • 2022-01-13
      • 2017-08-04
      • 1970-01-01
      相关资源
      最近更新 更多