python__[정규표현식]

Jaewon Lee·2021년 5월 31일
0

Algorithm

목록 보기
8/36
post-thumbnail

On.

정규 표현식은 코딩테스트에서 문자열 데이터를 전처리할 때 강력한 퍼포먼스를 발휘한다고 생각한다.

한꺼번에 정리하기에 너무 헤비급이라....여기에 천천히 추가하겠다!

p.s
.....생각보다 양이 너무 많아....


메타 문자


메타 문자란 원래 그 문자가 가진 뜻이 아닌 특별한 용도로 사용하는 문자를 말한다.

문자 클래스 [ ]

  • 기본적으로, 문자 클래스로 만들어진 정규식은 [ ] 안의 문자들과 매치라는 의미를 갖는다.
  • [ ] 안의 두 문자 사이에 하이픈(-)을 사용하면 두 문자 사이의 범위(From - To)를 의미한다.
  • 문자 클래스[ ] 안에서 사용되는 ^은 not의 의미를 지닌다.
    (메타문자의 ^와 다른 의미를 가지니 주의하자)
  • 문자클래스 안에서 사용되는 축약 표현이 있으니 기억해두자.
paragraph = "Bob hit a ball, the hit Ball flew far after it was hit."
result1 = re.sub('[abcABC]', ' ', paragraph)
result2 = re.sub('[a-zA-Z]', ' ', paragraph)
result3 = re.sub('[^\w]', ' ', paragraph)
print(result1)
print(result2)
print(result3)

>>
 o  hit     ll, the hit   ll flew f r  fter it w s hit.
              ,                                       .
Bob hit a ball  the hit Ball flew far after it was hit 


문자열 바꾸기


re.sub(pattern, repl, string, count, flags)

  • 정규식과 매치되는 부분을 다른 문자로 쉽게 바꿀 수 있다.
  • 파이썬 문자열은 기본적으로 replace 메서드를 갖고 있기 때문에 일반적인 문자열은 그냥 치환이 가능하다. (replace는 정규식 패턴에 대응하는 문자열을 찾아주지는 못한다.)

pattern : 정규 표현식

repl : 정규 표현식에 해당하는 부분을 치환할 내용

string : 대상 문자열

count : 최대 몆 개까지 치환할 것인지

flags : 모르겠음....알려주메


Off.


프론트와 백을 넘나드는 리드 개발자가 되는 그날까지 🔥🔥🔥

profile
Communication : any

0개의 댓글