如何允许" *"和正数表达式中的数字:Qt5.2

时间:2014-06-17 06:57:56

标签: regex windows ip-address qregexp qt5.2

我想仅在我*的IP地址中允许QLineEdit或号码。

我的正则表达式是:

QRegExp rx ( "^(0|[1-9]|[1-9][0-9]|1[0-9][0-9]|2([0-4][0-9]|5[0-5]))$" );

找到IP Address,现在我想允许*符号用于搜索IP范围。

即。 10.105.*.*10.107.*.* 这被视为10.105.0.010.107.255.255

1 个答案:

答案 0 :(得分:1)

尝试使用与*和/或0-255之间的IPAddress匹配的Regex

Regex reg = new Regex("^((\\*)?|[01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.((\\*)?|[01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.((\\*)?|[01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.((\\*)?|[01]?\\d\\d?|2[0-4]\\d|25[0-5])$");

bool isMatch = reg.IsMatch("*.1.1.255"); //true
isMatch=reg.IsMatch("255.255.255.255"); //true
isMatch=reg.IsMatch("*.*.*.*"); //true
isMatch=reg.IsMatch("0.0.0.0"); //true
isMatch=reg.IsMatch("256.*.*.*);//false
isMatch=reg.IsMatch("2.2.455.*);//false