Python - 正则表达式
一、使用正则和不使用正则区别 在不使用正则的情况下来匹配一个电话号码: #在一段文本中查找电话号码 例 331-896-7854 def isPhoneNumber(number): if len(number) != 12: #首先检查电话号码是否是12位数 return False for i in range(0,3): if not number[i].isdecimal(): #判断前三位是不是数字 return False if number[3] != '-': #判断第四位是不是 - return False for i in range(4,7): if not number[i].isdecimal(): return False if number[7] != '-': return False for i in range(8,12): if not number[i].isdecimal(): return False return True text = 'you can contact me at 331-896-7854. 400-400-8888 is my office' #待查找的文字 for i in range(len(text)): check = text[i:i+12] #因为电话号码是12位,所以将每段12个字符传入 判断 if isPhoneNumber(check): print('the phone number found:' + check) print('Done') 执行后 the phone number found:331-896-7854 the phone number found:400-400-8888 Done 使用正则来匹配 phoneNumRegex = re.compile(r'\d\d\d-\d\d\d...