QT做正则表达式时,移植的qt5程序,然后报错
经过一番研究
qt6没有QRegExpValidator了但是有替代方法
QT5程序
- QRegExp rx("^((99)|(9[0-9]\\d)(\\.\\d{1,2})?|([1-9]\\d)(\\.\\d{1,2})?|([1-9])(\\.\\d{1,4})?|0(\\.\\d{1,4})?)$ ");
- QRegExpValidator *pReg = new QRegExpValidator(rx, this);
- ui->volHight->setValidator(pReg);
QT6替换为
- QRegularExpression rx("^((99)|(9[0-9]\\d)(\\.\\d{1,2})?|([1-9]\\d)(\\.\\d{1,2})?|([1-9])(\\.\\d{1,4})?|0(\\.\\d{1,4})?)$ ");
- QValidator *pReg = new QRegularExpressionValidator(rx, this);
- ui->volHight->setValidator(pReg);
-
即可解决问题