当前位置:   article > 正文

Qt 正则表达式的使用_qt lineedit 正则

qt lineedit 正则

一、正则表达式简述

正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,该模式描述在搜索文本时要匹配的一个或多个字符串。

二、在Qt中使用正则表达式

  • 首先使用正则表达式需要添加头文件
#include <QRegExp>
  • 1
  • 用法一、对 QLineEdit 即输入框添加限制,强制限制输入格式或内容,例如:
	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));
  • 1
  • 2
  • 3

这样设置以后,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));
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

这里是提取输入中的全部数字

估计Qt中正则表达式常用就是这两种用法,相关正在表达式网上一大推,需要什么就搜什么就好了

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/299733
推荐阅读
相关标签
  

闽ICP备14008679号