split은 파이썬 문자열 함수입니다. split은 공백이나 특정 문자를 기준으로 문자열을 나누는 것인데요. 분리된 문자열은 리스트 자료형으로 반환됩니다. 하지만 복잡한 방법으로 문자열을 나누려면 split은 부족합니다. split 함수 및 복잡한 패턴을 이용하는 방법을 알아보았습니다.

 

 

1. split 함수 사용법

문자열은 직접 처리하기는 어렵기 때문에, 함수를 잘 사용하는 것이 중요합니다. split 함수는 문자열을 쉽게 나눠주는 함수입니다. 그냥 이용하면 공백을 기준으로 문자열을 나눠 줍니다.

 

text = 'abc def gh i'
text.split()

Out: ['abc', 'def', 'gh', 'i']

 

maxsplit을 지정하면 분할하는 횟수를 지정할 수 있습니다.

 

text = 'abc def gh i'
text.split(maxsplit=1)

Out: ['abc', 'def gh i']

 

특정 문자열을 기준으로 나누고 싶다면 이를 입력하면 됩니다.

 

text = 'a*badf*cddf*i'
text.split('*')

Out: ['a', 'badf', 'cddf', 'i']

 

 

2. 복잡한 패턴 나누기

단순 문자열이 아닌 패턴으로 나누려면 정규표현식을 알아야 합니다. 그리고 re 패키지의 split함수를 이용하면 되는데요. 공백이나 *가 있는 경우 문자열을 나누고 싶다면 아래와 같이 입력합니다.

 

text = 'abc def*efg'

import re
re.split('[ *]', text)

Out: ['abc', 'def', 'efg']

 

정규표현식은 이보다 더 복잡한 패턴도 지정이 가능합니다. 정규표현식은 이전에 정리한 내용이 있으니 참고하시기 바랍니다.

 

3. split 함수의 반대 join

쪼개진 문자열은 join함수를 이용해서 합칠 수 있습니다. join함수에 대해서 이전에 다룬 적이 있으니 참고하시기 바랍니다.

4. 문자열 알파벳 단위로 나누기

문자열을 그냥 알파벳 단위로 나누고 싶다면, split함수로는 어렵습니다. 문자열은 개별 문자가 합쳐진 리스트 자료형으로도 볼 수 있는데요. 그래서인지 리스트 자료형으로 변환하면 개별 알파벳 단위로 분리가 됩니다.

 

text = 'abcdef'
list(text)

Out: ['a', 'b', 'c', 'd', 'e', 'f']
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기