0에서 255 사이의 숫자에 대해 다음 정규식을 사용합니다.
(([0-9])|([1-9][0-9])|(1([0-9]{2}))|(2[0-4][0-9])|(25[0-5]))
위의 정규식은 0에서 255까지의 정수와 일치하지만 256과는 일치하지 않습니다.
따라서 IPv4의 경우 다음 정규식을 사용합니다.
^(([0-9])|([1-9][0-9])|(1([0-9]{2}))|(2[0-4][0-9])|(25[0-5]))((\.(([0-9])|([1-9][0-9])|(1([0-9]{2}))|(2[0-4][0-9])|(25[0-5]))){3})$
이 구조는 다음과 같습니다. ^(N)((\.(N)){3})$
여기서 N은 0에서 255 사이의 숫자를 일치시키는 데 사용되는
정규식입니다 . 이 정규식은 아래와 같이 IP와 일치합니다.
0.0.0.0
192.168.1.2
그러나 아래는 아닙니다.
10.1.0.256
1.2.3.
127.0.1-2.3
IPv4 CIDR (Classless Inter-Domain Routing)의 경우 다음 정규식을 사용합니다.
^(([0-9])|([1-9][0-9])|(1([0-9]{2}))|(2[0-4][0-9])|(25[0-5]))((\.(([0-9])|([1-9][0-9])|(1([0-9]{2}))|(2[0-4][0-9])|(25[0-5]))){3})\/(([0-9])|([12][0-9])|(3[0-2]))$
이 구조는 다음과 같습니다. ^(N)((\.(N)){3})\/M$
여기서 N은 0에서 255까지의 숫자를 일치시키는 데 사용되는 정규식이고 M은 0에서 32까지의 숫자를 일치시키는 데 사용되는
정규식입니다 . 이 정규식은 아래와 같이 CIDR과 일치합니다.
0.0.0.0/0
192.168.1.2/32
그러나 아래는 아닙니다.
10.1.0.256/16
1.2.3./24
127.0.0.1/33
"10.0.0.0/16", "192.168.1.1/32"
이 정규식을 사용하는 것과 같은 IPv4 CIDR 목록은 다음과 같습니다 .
^("(([0-9])|([1-9][0-9])|(1([0-9]{2}))|(2[0-4][0-9])|(25[0-5]))((\.(([0-9])|([1-9][0-9])|(1([0-9]{2}))|(2[0-4][0-9])|(25[0-5]))){3})\/(([0-9])|([12][0-9])|(3[0-2]))")((,([ ]*)("(([0-9])|([1-9][0-9])|(1([0-9]{2}))|(2[0-4][0-9])|(25[0-5]))((\.(([0-9])|([1-9][0-9])|(1([0-9]{2}))|(2[0-4][0-9])|(25[0-5]))){3})\/(([0-9])|([12][0-9])|(3[0-2]))"))*)$
이는 다음 구조에 있습니다. ^(“C”)((,([ ]*)(“C”))*)$
여기서 C는 CIDR (예 : 0.0.0.0/0)을 일치시키는 데 사용되는 정규식입니다.
이 정규식은 아래와 같이 CIDR 목록과 일치합니다.
“10.0.0.0/16”,”192.168.1.2/32”, “1.2.3.4/32”
그러나 아래는 아닙니다.
“10.0.0.0/16” 192.168.1.2/32 “1.2.3.4/32”
짧아 질지도 모르지만 나에게는 그렇게 잘 이해하기 쉽습니다.
도움이 되었기를 바랍니다.
ping 2130706433
및ping 127.1
안웃겨합니다.