QT 正则表达式

基本知识

注意:C++编译器会对反斜杠进行转换,要想在正则表达式中包括一个\,需要输入两次,例如\\s。要想匹配反斜杠本身,需要输入4次,比如\\\\。

匹配[1-9999]  第一个数字是1-9加后面0-3个任意数字

QRegExp rx("[1-9]\\d{0,3}");

匹配[1-30] 

SetRegExp("[1-2]\\d{0,1}|[1-9]|30")

 

匹配ip是否有效

QRegExp regExp("((2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(2[0-4]\\d|25[0-5]|[01]?\\d\\d?)");
	if (!regExp.exactMatch(strIP) || !regExp.exactMatch(strSubNetMask))
	{
		QMessageBox::information(this, "提示", "IP地址获取子网掩码错误");
		return;
	}

端口号正则表达式(最前的1改成0表示通道可以为0)

QRegExp rxp("^([1-9]|[1-9]\\d|[1-9]\\d{2}|[1-9]\\d{3}|[1-5]\\d{4}|6[0-4]\\d{3}|65[0-4]\\d{2}|655[0-2]\\d|6553[0-5])$");

输入可见字符(除去空格 回车 ...)

QRegExp rxp("^\\w+\\S+$");

 

0-100的保留两位小数正则表达式

QRegExp rxp("^(100|0?[0-9]?\\d(\\.\\d{1,2})?)$");

 

只能输入数字

QRegExp rxp("^[0-9]*$");

 

匹配非负整数(正整数 + 0)

^\d+$

 

匹配正整数

^[0-9]*[1-9][0-9]*$

 

匹配非正整数(负整数 + 0)

^((-\d+)|(0+))$

 

匹配负整数

^-[0-9]*[1-9][0-9]*$

 

匹配整数

^-?\d+$

 

匹配非负浮点数(正浮点数 + 0)

^\d+(\.\d+)?$

 

匹配正浮点数

^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$

 

匹配非正浮点数(负浮点数 + 0)

^((-\d+(\.\d+)?)|(0+(\.0+)?))$

 

匹配负浮点数

^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$

 

匹配浮点数

^(-?\\d+)(\\.\\d+)?$

 

匹配由26个英文字母组成的字符串

^[A-Za-z]+$

 

匹配由26个英文字母的大写组成的字符串

^[A-Z]+$

 

匹配由26个英文字母的小写组成的字符串

^[a-z]+$

 

匹配由数字和26个英文字母组成的字符串

^[A-Za-z0-9]+$

 

匹配由数字、26个英文字母或者下划线组成的字符串

^\w+$

 

匹配email地址

^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$

 

匹配url

^[a-zA-z]+://匹配(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$

 

匹配html tag

<\s*(\S+)(\s[^>]*)?>(.*?)<\s*\/\1\s*>

 

不想转义可以加R

QRegExp rx(R"(^\d\d?$)"); 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值