Python

[Python] 여러 구분자로 문자열 자르기

비번변경 2023. 1. 24. 17:05

개요

"100-200*300-500+20"

위와 같은 문자열이 있다고 했을 때, 숫자 값만 저장하고 싶다. 구분자가 -, *, + 와 같이 여러 개일 때 자르는 방법을 정리한다.

 

 

구분자 통일

replace 함수를 이용해 여러 구분자를 한 가지로 치환한다.

data_val = "100-200*300-500+20"

# 구분자 통일
data_val = data_val.replace('*', '-').replace('+', '-')

# 문자열 분할
list_val = data_val.split('-')

print(data_val)
print(list_val)

 

 

re.split

정규식을 다룰 때 사용하는 re 모듈에도 split 함수를 지원한다. re.split 함수에 구분자 패턴과 분할할 문자열을 지정하여 사용한다.

import re

data_val = "100-200*300-500+20"
print(re.split(r'-|\*|\+', data_val))

 

 

참고 문서

파이썬 split 구분자 여러개 있을 때 잘 분리해 봅시다.

https://docs.python.org/ko/3/library/re.html