QT笔记 - QRegularExpression正则表达式

QRegularExpression是Qt框架中的正则表达式类,它支持Perl兼容的正则表达式语法。
以下是一些常用的正则表达式语法规则:

1. 字符匹配:

    * 纯字符串:直接写入要匹配的字符串。例如,"hello"匹配字符串"hello"。

    * 转义字符:使用反斜杠(\)来转义特殊字符。例如,"\n"匹配一个换行符。

    * 字符类:使用方括号([])来定义一个字符集。例如,[abc]匹配"a"、"b"或"c"中的任意一个字符。

    * 范围:使用连字符(-)来定义一个字符范围。例如,[a-z]匹配任意一个小写字母。

    * 否定字符类:使用^字符来否定一个字符集。例如,[^abc]匹配任意一个不是"a"、"b"或"c"的字符。


2. 量词:

    * 至少一次:使用加号(+)来表示前面的字符至少出现一次。例如,"a+"匹配一个或多个"a"。

    * 零次或一次:使用问号(?)来表示前面的字符零次或一次。例如,"a?"匹配零个或一个"a"。

    * 零次或多次:使用星号(*)来表示前面的字符零次或多次。例如,"a\*"匹配零个或多个"a"。

    * 一次或多次:使用大括号({m,n})来表示前面的字符至少出现m次,最多出现n次。例如,"a{2,4}"匹配两个、三个或四个"a"。


3. 位置匹配:

    * 开头匹配:使用^字符来匹配字符串的开头。例如, "^hello"匹配以"hello"开头的字符串。

    * 结尾匹配:使用$字符来匹配字符串的结尾。例如,"hello$"匹配以"hello"结尾的字符串。

    * 单词边界:使用\b来匹配单词的边界。例如,"\bhello\b"匹配单独的"hello"单词,而不匹配"hello world"中的"hello"。


4. 分组和引用:

    * 分组:使用小括号()来定义一个分组。例如,"(abc)"匹配"abc"。

    * 引用:使用\n来引用前面括号中的分组。例如,"(abc)\1"匹配"abcabc"。


5. 其他特殊字符:

    * .:匹配任意一个字符,除了换行符。

    * \d:匹配一个数字字符。

    * \w:匹配一个字母数字字符。

    * \s:匹配一个空白字符。


这些只是一些常用的正则表达式语法规则,更多细节请参考Qt文档或正则表达式相关教程。
 

你可能感兴趣的:(qt,正则表达式)