在 python 中使用正则表达式查找有效的 phone 号码
Find a valid phone number using regular expression in python
phn1='412-1114-1234'
if re.search("\d{3}-\d{3}-\d{4}",phn1):
print('It is a phone number')
else:
print('It is not a phone number')
输出:它不是一个phone数字
但是,当我传递输入时:
phn1='4123-111-1234'
输出:它是一个phone数字
我在第二个 phone 数字中得到错误输出的代码有什么问题?
它matches 123-111-1234
(Everything except the first digit). Change your regex to: ^\d{3}-\d{3}-\d{4}$
to make sure it only matches the whole input (example).
这是 search
方法的行为,请尝试 match
。当您尝试搜索时,它会从 123-111-1234
这部分找到匹配项。更多信息:search vs match
phn1='412-1114-1234'
if re.search("\d{3}-\d{3}-\d{4}",phn1):
print('It is a phone number')
else:
print('It is not a phone number')
输出:它不是一个phone数字
但是,当我传递输入时:
phn1='4123-111-1234'
输出:它是一个phone数字
我在第二个 phone 数字中得到错误输出的代码有什么问题?
它matches 123-111-1234
(Everything except the first digit). Change your regex to: ^\d{3}-\d{3}-\d{4}$
to make sure it only matches the whole input (example).
这是 search
方法的行为,请尝试 match
。当您尝试搜索时,它会从 123-111-1234
这部分找到匹配项。更多信息:search vs match