I am trying to extract phone numbers using re.findall( ).But it shows TypeError: expected string or bytes-like object
I am trying to extract phone numbers using re.findall( ).But it shows TypeError: expected string or bytes-like object
- 问题陈述
The need to easily verify phone numbers in any relevant scenario.
考虑以下 Phone 个数字:
444-122-1234
123-122-78999
111-123-23
67-7890-2019
一个phone号码的一般格式如下:
Starts with 3 digits and ‘-‘ sign
3 middle digits and ‘-‘ sign
4 digits in the end
我的代码
import re
l1=[444-122-1234,123-122-78999,111-123-23,67-7890-2019]
k=[]
for i in l1:
str1=re.findall(r'\d{2}-\d{3}-\d{4}',i)
print(str1)
您只需要将 l1
列表中的每个 phone 数字放在引号内。现在它们只是带有一些负计算的整数。
使用列表理解:
import re
l1= ['444-122-1234', '123-122-78999', '111-123-23', '67-7890-2019']
str1 = [re.findall(r'\d{2}-\d{3}-\d{4}', i) for i in l1 if re.findall(r'\d{2}-\d{3}-\d{4}', i) ]
print(str1)
输出:
Out[18]: [['44-122-1234'], ['23-122-7899']]
- 问题陈述
The need to easily verify phone numbers in any relevant scenario.
考虑以下 Phone 个数字:
444-122-1234
123-122-78999
111-123-23
67-7890-2019
一个phone号码的一般格式如下:
Starts with 3 digits and ‘-‘ sign
3 middle digits and ‘-‘ sign
4 digits in the end
我的代码
import re
l1=[444-122-1234,123-122-78999,111-123-23,67-7890-2019]
k=[]
for i in l1:
str1=re.findall(r'\d{2}-\d{3}-\d{4}',i)
print(str1)
您只需要将 l1
列表中的每个 phone 数字放在引号内。现在它们只是带有一些负计算的整数。
使用列表理解:
import re
l1= ['444-122-1234', '123-122-78999', '111-123-23', '67-7890-2019']
str1 = [re.findall(r'\d{2}-\d{3}-\d{4}', i) for i in l1 if re.findall(r'\d{2}-\d{3}-\d{4}', i) ]
print(str1)
输出:
Out[18]: [['44-122-1234'], ['23-122-7899']]