赞
踩
正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,该模式描述在搜索文本时要匹配的一个或多个字符串。
#include <QRegExp>
QString reg="(25[0-5]|2[0-4][0-9]|1?[0-9]{0,2})";//这里reg是一个0-255正则表达式
QRegExp rx(reg);
ui->lineEdit->setValidator(new QRegExpValidator(rx,this));
这样设置以后,lineEdit输入框就只能输入0-255的数字,其它输入不进去的
QString text = ui->lineEdit_2->text();
QRegExp rx("-?[1-9]\\d*\\.\\d*|0+.[0-9]+|-?0\\.\\d*[1-9]\\d*|-?\\d+");
int pos = 0;
QString number;
while ((pos = rx.indexIn(text, pos)) != -1)
{
pos += rx.matchedLength();
number.append(rx.cap(0));
}
ui->textBrowser->append(QString("其中的数字有:%1").arg(number));
这里是提取输入中的全部数字
估计Qt中正则表达式常用就是这两种用法,相关正在表达式网上一大推,需要什么就搜什么就好了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。