[파이썬] 문자열에서 숫자만 추출하기

sohee jung·2022년 9월 10일
1

[파이썬] 기초 문법

목록 보기
2/11
post-thumbnail

re.sub()

  • 모든 숫자들을 1개의 문자열로 추출
  • sub()는 String에서 pattern과 일치하는 문자들을 repl로 교체
re.sub(pattern, repl, string)
  • sub()를 사용하여 문자열에서 숫자가 아닌 문자를 모두 제거하고 숫자로 구성된 문자열 생성 가능
import re
 
string = 'aaa1234, ^&*2233pp'
numbers = re.sub(r'[^0-9]', '', string)
print(numbers)

##Output:
##12342233

re.findall()

  • string에서 pattern에 해당하는 내용들을 찾아서 리스트로 리턴
  • r'\d+'는 1회 이상 반복되는 숫자들에 대한 패턴을 의미
  • 연속된 숫자들을 하나의 Integer로 추출
import re
 
string = 'aaa1234, ^&*2233pp'
numbers = re.findall(r'\d+', string)
print(numbers)

##output:
##['1234', '2233']

re.findall()

  • 숫자 추출 및 낱개로 분리하여 List로 리턴
  • r'\d'는 1개의 숫자
  • 1개 이상의 반복을 의미하는 +가 제외된 패턴으로 패턴을 찾으면, 숫자 1개 단위로 추출되어 리스트에 저장
import re
 
string = 'aaa1234, ^&*2233pp'
numbers = re.findall(r'\d', string)
print(numbers)

##Output:
##['1', '2', '3', '4', '2', '2', '3', '3']
profile
짱이 될거야

0개의 댓글