티스토리 뷰
python re module로 제공
- search
- match
- findall
- sub
- split
- compile
re.search(query, content) 리턴 _sre.SRE_Match
re.match(query, content) 리턴 _sre.SRE_Match
m = re.search(r'^b\w+', 'banana')
print m.group() 리턴 str
findall(query, content) 리턴 list
sub(query, replace, content) 리턴 str
sub 응용
replace 는 text 가 올 수도 있고 패턴이 올 수도 있다
pattern = r'(\d{3})-(\d{4})-(\d{4})'
replace = r'(\1) \2-\3'
result = re.sub(pattern, replace, '010-3457-6360')
print result
split - 자르고자 하는 seperator를 정규표현식으로 한번에 씀
a = "one,two three.four*five:six"
print re.split(r'[:,.*\s]*', a)
compile - 정규표현식을 객체로 관리, 한번만 씀 타입은 SRE_Pattern
정규표현식은 매순간 빌딩을 하는데, compile 을 쓰면 이를 절약할 수 있다
email_reg = re.compile(r'[\w.-]+@[\w.-]+')
m = email_reg.search('What a nice weather macmath22@gmail.com, test@test.com mina@minas.net')