在我的项目中,我想通过IP输入过滤我的一些数据 .
我还想允许通过部分IP输入进行过滤,例如:192.168 .
我发现了如何设置完整的IP验证 .
QString oIpRange;
QRegExpValidator *poIpValidator;
// Client IP validation mask
oIpRange =
"(?:[0-1]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])";
QRegExp oIpRegex ("^" + oIpRange
+ "\\." + oIpRange
+ "\\." + oIpRange
+ "\\." + oIpRange + "$");
poIpValidator =
new QRegExpValidator(oIpRegex,
poQtLineEdit);
// Client IP set validator
poQtLineEdit->setValidator( poIpValidator );
我将QLineEdit“returnPressed”信号连接到我的过滤器功能 .
问题是“returnPressed”信号仅在我输入完整IP而不是部分IP时发出 .
有任何建议如何解决这个问题?
谢谢
3 回答
您可以使用
QRegExpValidator
来执行此操作 .部分验证:
谢谢你的回答我给正则表达式添加了一个小修复