0

我需要匹配如下字符串:

  1. XXX

但两者都是“1”。并且“XXX”被突出显示,我目前正在使用以下正则表达式:

QRegExp ("^\s+(\d+\.)?\s+\b[AZ]{2,}\b")

在这种情况下如何仅突出显示 XXX ?

非常感谢 !

4

1 回答 1

2

你的正则表达式应该是这样的:

QRegExp ("^\s+(\d+\.)?\s+(\b[A-Z]{2,}\b)")

所以你可以在你的正则表达式中捕获 XXX。然后,您使用 检索所有匹配项capturedTexts()。您要查找的字符串应该是最后一个索引,因为第一项是匹配的整个字符串,第二项是找到的数字和点或字符串 XXX。如果存在数字,则 XXX 将位于第三个字符串中。

有了它,您就可以在原始子字符串中找到该子字符串的索引来设置突出显示。

于 2011-07-01T04:25:57.773 回答