QRegExp是Qt的正規表達式類.
Qt中有兩個不同類的正規表達式.
第一類為元字元.它表示一個或多個常量表達式.
令一類為轉義字元,它代表一個特殊字元.
一.元字元
. 比對任意單個字元.例如, 1.3 可能是1. 後面跟任意字元,再跟3
^ 比對字元串首. 例如, ^12可能是123,但不能是312
$ 配字元串尾. 例如, 12$可以是312, 當不能是 123
[] 比對括号内輸入的任意字元.[123]可以為1, 2 或3
* 比對任意數量的前導字元. 例如, 1*2可以為任意數量個1(甚至沒有), 後面跟一個2
+ 比對至少一個前導字元. 例如, 1+2必須為一個或多個1, 後跟一個2
? 比對一個前導字元或為空. 例如 1?2可以為1或這12
二.統配模式
通過 QRegExp::setPatternSyntax(QRegExp::Wildcard);可以将元字元設定為統配模式.在統配模式下,隻有3個元字元可以使用.他們的功能沒有變化.
? 比對任意單個字元, 例如, 1?2可以為1,後面跟任意單個字元, 再跟2
* 比對任意一個字元序列. 例如, 1*2, 可以為1, 後面跟任意數量的字元, 再跟一個2
[] 比對一個定義的字元集合. 例如, [a-zA-Z/.]可以比對 a到z之間任意一個字元和. [^a]比對出小寫a以外的字元.
三.轉義序列
/. 比對"."
/^ 比對"^"
/$ 比對"$"
/[ 比對"["
/] 比對"]"
/* 比對"*"
/+ 比對"+"
/? 比對"?"
/b 比對響鈴字元,使計算機發出嘟的一聲.
/t 制表符号
/n 換行符号
/r 回車符鉿
/s 任意空格
/xnn 比對16進制為nn的字元
/0nn 比對8進制的nn字元
這些表達式均以/開始, 與C++的轉義字元相同,是以為了定義QRegExp中的一個轉義序列,
需要在前面添加兩個//