怎样用正则表达式匹配IPV4地址
我们先来考虑一些问题
单独的一个数字(表示0-9)
一个非零数字后紧跟着另外一个数字(表示10-99)
“1”后面跟着两个数字(表示100-199)
2”后面跟着一个”0”到”4”间的数字,后面又跟着一个数字(表示200-249)
“25”后面跟着一个”0”到”5”间的数字(表示250-255)
所以写法有
^0*([1-9]?\d|1\d\d|2[0-4]\d|25[0-5])\.0*([1-9]?\d|1\d\d|2[0-4]\d|25[0-5])\.0*([1-9]?\d|1\d\d|2[0-4]\d|25[0-5])\.0*([1-9]?\d|1\d\d|2[0-4]\d|25[0-5])$
下面这个是我在做课程设计时看到的一种写法
^(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|[1-9])\\." +
"(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\." +
"(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\." +
"(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)$