定義一個函數,輸入字符串,判斷是否是IP地址,輸出布爾值。以及測試用例編寫。


1、需求:輸入字符串,如果是IP地址,輸出True,如果不是,則輸出False。定義一個函數,及編寫測試這個函數的測試用例。

2、思路:先確認IP的格式:(0~255).(0~255).(0~255).(0~255)

3、編碼如下:

import re
def judge_legal_ip(input):
    p = re.compile('^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$')
    if re.match(p,input):
        return True
    else:
        return False

if __name__ == '__main__': ip_list = ['0.0.0.0','35.255.12.12','255:255:255:255','255.255.255.256','','12345678','12.123123123','12.23.13', 'aa.12.1.2', '12.23.12.32.12','12...12'] for one_str in ip_list: if judge_legal_ip(one_str): # 正則方法 print '{0} is a legal ip address!'.format(one_str) else: print '{0} is not a legal ip address!'.format(one_str)

 

測試用例編寫:

1、正常最小值用例:0.0.0.0

2、正常用例第二個值首數字大於2:35.255.12.12

2、正常最大值用例:255:255:255:255

3、異常用例:255.255.255.256

4、異常用例:空字符串

5、異常用例:沒有帶.字符串

6、異常用例:僅帶一個.

7、異常用例:僅帶2個.

8、異常用例:帶3個.,有字母

8、異常用例:帶4個.

9、異常用例:帶3個連續的點

 

正則表達式學習推薦:

https://www.cnblogs.com/chuxiuhong/p/5885073.html      Python 正則表達式入門(初級篇)
http://www.cnblogs.com/chuxiuhong/p/5907484.html Python 正則表達式入門(中級篇)
 
        

 

 
        
 
       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM