반응형
파이썬(python)에서 정규표현식(re)을 사용하지 않고도 딱 한 줄의 코드로 문자열에서 숫자만 추출하는 방법을 알려주는 강의입니다.
정규표현식, 반복문, 리스트 컴프리헨션 등 다양한 방법을 사용하여 같은 결과를 얻어 낼 수 있도록 설명합니다.
먼저,
정규표현식을 사용한 방법입니다.
import re
song_num_text = "javascript:melon.link.goArtistDetail('203912');"
song_num = re.sub(r'[^0-9]', '', song_num_text)
print(song_num)
아래는 정규표현식을 사용하지 않는 방법입니다.
song_num_text = "javascript:melon.link.goAlbumDetail('10903868');"
# 1
song_num = []
for num in song_num_text:
print(f"{num}:{type(num)}")
if num.isdigit():
song_num.append(num)
song_num = ''.join(song_num)
print(song_num)
i = "2"
print(type(i))
print(i.isdigit())
# 2
song_num = ''.join([num for num in song_num_text if num.isdigit()])
print(song_num)
isdigit를 사용하면 문자열로 되어있는 숫자도 판단이 가능합니다.
최종적으로 반복문을 리스트 컴프리헨션을 사용하여 한 줄로 줄여줍니다.
자세한 방법은 아래 유튜브 강의를 참고 바랍니다.
이 강의에서 사용하는 파이썬은 3.10.6 버전이며 편집기는 vscode입니다.
https://youtu.be/evEuSuQHk0M
반응형
'프로그래밍 > 2022' 카테고리의 다른 글
파이썬 os.listdir, glob.glob 사용법 지정한 폴더의 파일 리스트 가져오기 (0) | 2023.04.24 |
---|---|
파이썬 파일 확장자 추출하는 방법(os.path.splitext vs pathlib.Path) (0) | 2023.04.24 |
파이썬(python) datetime 모듈 timedelta 사용하여 날짜, 시간 차이 계산하는 방법(더하기, 빼기) (0) | 2023.04.24 |
파이썬 강의 datetime 모듈로 현재 날짜, 시간 알아내기 (0) | 2023.04.24 |
파이썬 셀레니움(selenium) 링크 클릭해서 새탭(새창)으로 열기 (0) | 2023.04.24 |