查看完整版本: [-- QLineEdit输入按IP地址校验 --]

QTCN开发网 -> Qt基础编程 -> QLineEdit输入按IP地址校验 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

airhello 2011-10-26 23:25

QLineEdit输入按IP地址校验

  1. QRegExp ipRegExp = QRegExp("((2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){4}");
        QRegExpValidator *ipRegExpValidator = new QRegExpValidator(ipRegExp, this);
        ipLineEdit->setValidator(ipRegExpValidator);
        ipLineEdit->setInputMask("000.000.000.000; ");
还能输入999.999.999.999,相当于正则表达式没有效果,只有mask启作用了。


但是如果把最后一行改成ipLineEdit->setInputMask("000.000.000.000;0");的话,则正则表达式就能起作用,就无法再输入999.999.999.999这种非法IP地址了。


这是什么原因,怎么才能把它改好呢?


luckydarcy 2016-12-30 17:21
我也遇到了这样的问题,setInputMask加了0看起来很别扭,换成空格后正则表达式又失效了。怎么样能做到Windows那种效果?

hehui 2016-12-31 00:48
你这个正则写的太简单了,以前写过一个不记得扔哪 了


查看完整版本: [-- QLineEdit输入按IP地址校验 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled