1. QRegExp exp(“ab+”); //ab,abb… QRegExp exp(“d”); //一位数字 QRegExp exp(“[X-Zx-z]”);//xyz之间的一位(不区分大小写)。 QRegExp exp(“[2-6]”);//2-6之间的一位数字 QRegExp exp(“[0-9]{0,3}”);//(0-999) QRegExp exp(“[0-9]{0,1}[.][0-9]{0,3}”);//一位整数,最多三位小数; QRegExp exp(“0|[1-9]d{0,4}”); ui.lineEdit->setValidator(new QRegExpValidator(regExp,this));// 0-99999; ui.lineEdit->setValidator(new QRegExpValidator(regExp,this)); ui.lineEdit->setValidator(new QIntValidator(1,56,this)); //1-56之间的小数 ui.lineEdit->setValidator(new QDoubleValidator(0,180.0,3,this));//0-180,三位小数(只能限制小数位数) 2. 一些不便书写的字符,采用在前面加 “/” 的方法。 /r,/n,/t; // :代表/本身; /.:代表.本身; “d” 可以匹配任意一个数字。 “w”: 任意一个字母或数字或下划线,也就是 A~Z,a~z,0~9,_ 中任意一个 “.”:小数点可以匹配除了换行符(/n)以外的任意一个字符 [f-k]:匹配 “f”~”k” 之间的任意一个字母 [^A-F0-3] :匹配 “A”~”F”,”0”~”3” 之外的任意一个字符 3. 修饰匹配次数的特殊符号 表达式 作用 {n} 表达式重复n次,比如:”/w{2}” 相当于 “/w/w”;”a{5}” 相当于 “aaaaa” {m,n} 表达式至少重复m次,最多重复n次,比如:”ba{1,3}”可以匹配 “ba”或”baa”或”baaa” {m,} 表达式至少重复m次,比如:”/w/d{2,}”可以匹配 “a12”,”_456”,”M12344”… ? 匹配表达式0次或者1次,相当于 {0,1},比如:”a[cd]?”可以匹配 “a”,”ac”,”ad” + 表达式至少出现1次,相当于 {1,},比如:”a+b”可以匹配 “ab”,”aab”,”aaab”… * 表达式不出现或出现任意次,相当于 {0,},比如:”/^*b”可以匹配 “b”,”^^^b”… 4. ^-?(90|[1-8]?d(.d{1,4})?)$
式子中开头的^和结尾的$限定字符串的开始和结尾; “-?” 表示一个或0个负号,这里面的问号表示其前面的字符重复0次或1次; 管道符“|”表示平行分组,比如后三个,表示180或其它形式; [1-9] 表示限定数字范围为1到9,其余类似,如果是有限几个值,还可以用枚举的方式,比如限定-255到255时,第一个数字2的限定,应该表达为[1,2],这表示这个位置只允许是1或者2; “d”是一个转义字符,表示匹配一位数字; “.” 表示匹配小数点; “d+”,这里面的+表示其前面的d重复一次或多次; “d{1,4}”,里面的{1,4}表示重复1到4次; (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|