Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

문자열에서 최대 숫자 값을 추출하는 Python Regex

<시간/>

정규식을 사용하여 문자열에서 최대 숫자 값을 추출하는 가장 쉬운 방법은 -

  • 정규식 모듈을 사용하여 문자열에서 모든 숫자 추출
  • 이 숫자에서 최대값 찾기

예를 들어, 입력 문자열의 경우 -

이 도시에 121005명이 있고 이웃 도시에 1587469명, 먼 도시에 18775994명이 있습니다.

우리는 출력을 얻어야 합니다 -

18775994

\d는 숫자를 나타내고 더하기 기호는 연속 숫자 중 가장 긴 문자열을 찾기 때문에 "\d+" 정규식을 사용하여 문자열의 모든 숫자를 찾을 수 있습니다. 다음과 같이 re 패키지를 사용하여 구현할 수 있습니다. -

import re

# Extract all numeric values from the string.
occ = re.findall("\d+", "There are 121005 people in this city, 1587469 in the neighbouring city and 18775994 in a far off city.")

# Convert the numeric values from string to int.
num_list = map(int, occ)

# Find and print the max
print(max(num_list))

이것은 출력을 줄 것입니다 -

18775994