import re
정규표현식 = r'([a-zA-Z]+) : (Wd+)'
문자열 = 'name : leehojun, age : 10, height : 180, email : paul-lab@naver.com'
결과 = re,split(정규표현식, 문자열)
print(결과)
'''
코드실행결과
['name : leehojun. ',
'age',
'10',
', ',
'height',
'180',
', email : paul-lab@naver.com' ]
'''
split()
메서드의 리턴값패턴대로 문자열을 분할한다
'age',
, '10',
, 'height',
, '180',
이렇게 4개 뿐이고코드1에서 패턴을 ,
로 수정하면 아래와 같이 결과가 다르게 나온다
import re
정규표현식 = r','
문자열 = 'name : leehojun, age : 10, height : 180, email : paul-lab@naver.com'
결과 = re,split(정규표현식, 문자열)
print(결과)
'''
코드실행결과
['name : leehojun' ,
' age : 10' ,
' height : 180' ,
' email : paul-lab@navr.com']
'''
,
을 기준으로 문자열 분할,
를 기준으로 나눠준 것(split
) 을 확인할 수 있다
하지만 문자열 사이에 공백이 있는 것을 보니 깔끔하게 split되지는 않았다고 알 수 있다
split()
메서드 최대분할개수아래와 같이 패턴대로 문자열을 최대 2개까지만 분할한다면
'''
split(정규표현식, 문자열, [최대분할개수])
최대 2개로 분할한다면
'''
결과 = re.split(정규표현식, 문자열, 2)
'''
실행결과
['name : leehojun' , ' age : 10' , ' height : 180, email : paul-lab@naver.com']
'''
height : 180, email : paul-lab@naver.com
최대분할개수를 2로 지정해서 2개까지로만 분할되서
이 문자열이 코드1
에서는 두개로 분할되서 나왔는데
코드2
에서는 하나로 뭉쳐서 나오는 것을 확인할 수 있다
0개 name : leehojun
1개 age : 10
2개 height : 180, email : paul-lab@naver.com