それは正当なIPアドレスであるかどうかの判定

 

IPv4の

再インポート
#単純なマッチング文字列特定のIPアドレス、次の例では、それはIPv4アドレスであるか否かが、正規表現
IF re.match(R&LT " ^(?:[0-9] {1、。 } 3 \){} 3 [0-9] {1,3} $。。。" " 272.168,1,1 " ):
    印刷する" IP vaild " 

    印刷" のIP invaild " 
#は、正確な指定された文字と一致します文字列は、IPアドレスであるかどうかを
IF re.match(R " ?2 [0-4] [0-9] | | [01] [0-9] [0〜25 [0-5]:^(?:( 9])\){3}(?:25 [0-5] |?。2 [0-4] [0-9] | [01] [0-9] [0-9])$?"" 223.168.1.1 " ):
    印刷" IP vaild "

    プリント" IP invaild " 
長い抽出のIPアドレスから抽出された#単純なテキスト
string_ip =は" ?この289.22.22.22 IPです 
結果= re.findall(R&LT " \ Bは(?:[0-9] 1,3} {\ 。)3} {[0-9] 1,3} {\ B。"string_ip)
 IF 結果:
    印刷結果
    プリント" 再IPを見つけることができません" 
#正確なIPの抽出
結果 = re.findall(R&LT " \ Bを( ?:(:25 [0-5] | 2 [0-4] [0-9] | [01] [0-9] [0-9])\){3}(25 ???。 [0-5] | 2 [0-4] [0-9] | [01] [0-9] [0-9])\ bの?? "string_ip):
 IF 結果:
    結果を印刷し、他の
    印刷"

IPを見つけることができません再

 

IPv6の正規表現の一致

= string_IPv6 " 1050:0:0:0:。5:600:300C:326B " 
#一致がIPv6形式の要件を満たし、その例ケースに鈍感ご注意ください
IF re.match(R&LT " ^(?:[-F0 -9] {1,4} :)} 7 {[A-F0-9] {1,4} $。"string_IPv6、re.I): 
    プリント" IPv6のvaild " 
    印刷" のIPv6 invaild 
#1のIPv6抽出物大文字と小文字を区別しないで実施例
の結果 = re.findall(R&LT (<![:\ W])(?:[A-F0-9] {1,4} :)} 7 {[A-F0 -9] {1,4}([:!。\ W])" 、string_IPv6、re.I) 印刷抽出結果の
印刷結果

 

 

参考:

https://www.cnblogs.com/brogong/p/7929298.html

おすすめ

転載: www.cnblogs.com/sea-stream/p/11210738.html