파이썬 공부(정규식)

파이썬 공부(정규식)

Summary:

본 포스팅은 서진수님의 <왕초보! 파이썬 배워 크롤러 DIY 하다!>를 통해 공부한 내용을 정리하기 위해 작성했습니다. 오늘은 Day6 정규식 입니다.


pic1

Overview



기본 정규식

정규식을 이용하기 위해 파이썬에서 re모듈을 불러온다. 정규식으로 a나 b를 찾아보자.

search : [ ] 안 글자 중 일부라도 포함되면 찾아줌
match : [ ] 안 글자와 완전히 동일한 글자를 찾아줌

import re
r = re.compile("[ab]")
print(r.search("pizza"))
print(r.match("pizza"))
print(r.match("abcd"))

정규식 기초 문법

. : 임의의 한 문자

a = re.compile("a,c")
a.search("abc")

? : 바로 앞의 문자가 존재하거나 존재하지 않음

b = re.compile("ab?c")
b.search("ac")
b.search("abc")
b.search("abbc")

* : 바로 앞의 문자가 존재하지 않거나 갯수에 상관없이 존재

b = re.compile("ab*c")
b.search("ac")
b.search("abc")
b.search("abbc")

+ : 바로 앞의 문자가 한 번 이상 존재

b = re.compile("ab+c")
b.search("ac")
b.search("abc")
b.search("abbc")

^ : 시작문자 지정

b = re.compile("^a")
b.search("ab")
b.search("ba")

$ : 끝나는 문자 지정

b = re.compile("c$")
b.search("abc")
b.search("cba")

추가 함수

findall

re.findall("\d+", "이 제품의 가격은 13900원입니다.")
re.findall("\d+", "이 제품의 가격은 13,900원입니다.")

split

re.split("[:]+", "제품명 : 가격 : 후기")
re.split("[ ]+", "제품명 : 가격 : 후기")

sub

re.sub("@", " , ", "imyeonn@gmail.com")

Hyeyeon

A Blog about E-Commerce and Product Management

comments powered by Disqus

    rss facebook twitter github youtube mail spotify instagram linkedin google google-plus pinterest medium vimeo stackoverflow reddit quora