0 ile 255 arasındaki sayılar için şu normal ifadeyi kullanıyorum:
(([0-9])|([1-9][0-9])|(1([0-9]{2}))|(2[0-4][0-9])|(25[0-5]))
Yukarıdaki normal ifade, 0 ile 255 arasındaki tamsayılarla eşleşecek ancak 256 ile eşleşmeyecektir.
Dolayısıyla IPv4 için şu normal ifadeyi kullanıyorum:
^(([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})$
Bu yapı ^(N)((\.(N)){3})$
şu şekildedir : Burada N, 0 ile 255 arasındaki bir sayıyı eşleştirmek için kullanılan normal ifadedir.
Bu normal ifade aşağıdaki gibi IP ile eşleşecektir:
0.0.0.0
192.168.1.2
ancak aşağıdakiler değil:
10.1.0.256
1.2.3.
127.0.1-2.3
IPv4 CIDR (Sınıfsız Etki Alanları Arası Yönlendirme) için şu normal ifadeyi kullanıyorum:
^(([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]))$
Bu yapı ^(N)((\.(N)){3})\/M$
şu şekildedir : Burada N, 0 ile 255 arasındaki sayıyı eşleştirmek için kullanılan normal ifade ve M, 0 ile 32 arasındaki sayıyı eşleştirmek için kullanılan normal ifadedir.
Bu normal ifade aşağıdaki gibi CIDR ile eşleşecektir:
0.0.0.0/0
192.168.1.2/32
ancak aşağıdakiler değil:
10.1.0.256/16
1.2.3./24
127.0.0.1/33
Ve "10.0.0.0/16", "192.168.1.1/32"
bu normal ifadeyi kullandığım gibi IPv4 CIDR listesi için :
^("(([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]))"))*)$
Şu yapıdadır: ^(“C”)((,([ ]*)(“C”))*)$
burada C, CIDR ile eşleşmek için kullanılan normal ifadedir (0.0.0.0/0 gibi).
Bu normal ifade, aşağıdaki gibi CIDR listesiyle eşleşecektir:
“10.0.0.0/16”,”192.168.1.2/32”, “1.2.3.4/32”
ancak aşağıdakiler değil:
“10.0.0.0/16” 192.168.1.2/32 “1.2.3.4/32”
Belki kısalabilir ama benim için çok iyi anlamak benim için kolay.
Umarım yardımcı olur!
ping 2130706433
veping 127.1
bir giggle.