程序员的知识教程库

网站首页 > 教程分享 正文

Qt编程进阶(3):基本的正则表达式(qt使用正则表达式)

henian88 2024-10-10 05:52:50 教程分享 3 ℃ 0 评论

使用正则表达式可以方便地完成处理字符串的一些操作,如验证,查找,替换和分隔等。Qt的QRegExp类是正则表达式的表示类,它基于Perl的正则表达式语言,完全支持Unicode。

正则表达式由表达式(expressions)、量词(quantifiers)和断言(assertions)组成。

表达式

最简单的表达式是一个字符。字符集可以使用表达式如“[AEIOU]”,表示匹配所有的大写元音字母;使用“[^AEIOU]”则表示匹配所有非元音字母,即辅音字母;连续的字符集可以使用表达式如“[a-z]”,表示匹配所有的小写英文字母。

量词

量词说明表达式出现的次数,如“x[1,2]”表示“x”可以至少有一个,至多两个。

在计算机语言中,标识符通常要求以字母或下划线开头,后面可以是字母,数字和下划线。满足条代的标识符表示为:

“[A-Za-z_]+[A-Za-z_0-9]*”

其中,表达式中的“+”表示“[A-Za-z_]”至少出现一次,可以出现多次;“*”表示“[A-Za-z_0-9]可以出现零次或多次。

类似的正则表达式的量词见下表。

断言

“^”“$”“\b”都是正则表达式的断言,正则表达式的断言见下表。

例如,若要只有在using后面是namespace时才匹配using,则可以使用“using(?=E\s+namespace),(此处“?=E”后的“\s”表示匹配一个空白字符,下同)。

如果使用“using(?!E\s+namespace)”,则表示只有在using后面不是namespace时才匹配using。

如果使用“using\s+namespace”,则匹配为using namespace。

————————————————

觉得有用的话请关注点赞,谢谢您的支持!

对于本系列文章相关示例完整代码有需要的朋友,可关注并在评论区留言!

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表