增强IP地址正则表达式验证 - 正则表达式重构

时间:2014-02-07 10:58:35

标签: regex validation ip ip-address

我有一个正则表达式验证规则,目的是检查用户是否在最多10行的文本区域中输入valide IP地址。 规则是:IP地址必须以10.200.X.X开头,用户可以输入1到10个地址,每个地址在一行上(用行尾字符分隔)。

实际上,这个正则表达式正在运行,但它非常长。 有人可以考虑一下缩短的正则表达式吗?

^(10\.200\.([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))(([\n\r]10\.200\.([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))?){1,9}$

非常感谢大家

1 个答案:

答案 0 :(得分:1)

您可以尝试:

^(10\.200\.([1-9]?\d|1\d{2}|2[0-4]\d|25[0-5])\.([1-9]?\d|1\d{2}|2[0-4]\d|25[0-5]))(([\n\r]10\.200\.([1-9]?\d|1\d{2}|2[0-4]\d|25[0-5])\.([1-9]?\d|1\d{2}|2[0-4]\d|25[0-5]))?){1,9}$

<强>解释

enter image description here