следующие данные являются фрагментом из date.txt: https://github.com/BRAKESH3336/sample/blob/master/dates.txt
задача состоит в том, чтобы извлечь даты в формате: 20.04.2009, 20.04.09, 4 / 20/09, 4/3/09
, если данные импортируются как одна строка, регулярное выражение работает
df='''
03/25/93 Total time of visit (in minutes):
6/18/85 Primary Care Doctor:
sshe plans to move as of 7/8/71 In-Home Services: None
7 on 9/27/75 Audit C Score Current:
2/6/96 sleep studyPain Treatment Pain Level (Numeric Scale): 7
.Per 7/06/79 Movement D/O note:
4, 5/18/78 Patient's thoughts about current substance abuse:
10/24/89 CPT Code: 90801 - Psychiatric Diagnosis Interview
3/7/86 SOS-10 Total Score:
(4/10/71)Score-1Audit C Score Current:
(5/11/85) Crt-1.96, BUN-26; AST/ALT-16/22; WBC_12.6Activities of Daily Living (ADL) Bathing: Independent
4/09/75 SOS-10 Total Score:
'''
pattern= re.compile(r'\d{0,2}[/]\d{1,2}[/]\d{2,4}')
matches=pattern.finditer(df)
for match in matches:
print(match)
, однако, когда данные импортируются с использованием open () регулярное выражение не работает
doc = []
with open('dates.txt') as file:
for line in file:
doc.append(line)
df = pd.Series(doc)
df.head(10)
pattern= re.compile(r'\d{0,2}[/]\d{1,2}[/]\d{2,4}')
matches=pattern.finditer(df)
for match in matches:
print(match)
С чего бы это? Я получаю ошибку:
--------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-83-c6639f3c12f4> in <module>
1 pattern= re.compile(r'\d{0,2}[/]\d{1,2}[/]\d{2,4}')
----> 2 matches=pattern.finditer(df)
3 for match in matches:
4 print(match)
TypeError: expected string or bytes-like object