2016-09-19 2 views
0

Jupyter 노트북에서 파이썬을 사용하여 웹에서 데이터를 가져옵니다. 데이터를 추출하고 구문 분석 한 다음 데이터 프레임을 만들었습니다. 데이터 프레임에있는 문자열에서 숫자를 추출해야합니다.re.search python의 일치 값 얻기

for note in df["person_notes"]: 
    print(re.search(r'\d+', note)) 

을하고, 결과는 다음과 같다 :이 정규식을 사용하는 나는 그것을 할

<_sre.SRE_Match object; span=(53, 55), match='89'> 

가 어떻게 그냥 일치하는 번호를 얻을 수 있습니다; 이 줄은 89가 될 것입니다. 전체 줄을 str()replace()으로 변환하려고 시도했지만 모든 줄에 span=(number, number) iqual이있는 것은 아닙니다. 미리 감사드립니다.

답변

1

당신은 문자열 내 정확한 위치를 얻기 위해 반환 일치하는 개체에 대한 start()end() 방법을 사용할 수 있습니다

for note in df["person_notes"]: 
    match = re.search(r'\d+', note) 
    if match: 
     print(note[match.start():match.end()]) 
    else: 
     # no match found ...