【问题标题】:How in Qt using QRegExp find complete string in another string如何在 Qt 中使用 QRegExp 在另一个字符串中找到完整的字符串
【发布时间】:2022-12-04 23:09:26
【问题描述】:

我有 2 个值 - valueToSearch 和当前职业。我需要检查当前 Profession 是否包含完整的单词 valueToSearch。

我试着这样做

QRegExp rx("\b"+valueToSearch+"\b");
rx.setPatternSyntax(QRegExp::Wildcard);
qInfo()<<rx.exactMatch(currentProfession);

【问题讨论】:

  • 小心在正则表达式中转义。如果您不使用原始字符串文字,您将需要 \\ 而不是 \ 尝试使用 QRegExp rx("\\b"+valueToSearch+"\\b"); 代替。
  • 另一个很好的例子是使用正则表达式(并对此感到头疼)而不是使用简单的内置函数,例如QString::indexOf()
  • 您不需要正则表达式的强大功能(和复杂性)来执行简单的子字符串搜索。
  • Jesper Juhl 你的意思是使用包含?但是,如果当前职业具有全部价值并且边界是空格或价值的结尾,我需要得到真实。但不是另一个符号。
  • drescherjm 没有工作。

标签: c++ regex qt


【解决方案1】:

弄清楚我应该获取索引并检查单词的边界。

currentProfession.indexOf(valueToSearch);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-19
    • 2022-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多