很简单,这里的测试代码失败了。
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在这种情况下不匹配?
答案 0 :(得分:2)
QRegExp不支持像+?
您可以使用[^,]+
代替