TIL(Today I Learned)

2월 20일(화)

공부한 내용을 제 언어로 빠르게 정리한 내용이라서 잘못된 내용이 있을 수 있습니다.

  • 정규표현식에서 ‘\b’의 의미
    • 단어 경계
    • \w에 대한 경계
    • 어느 한쪽은 [_a-zA-Z0-9]이고 한쪽은 [_a-zA-Z0-9]가 아닌 것
    • 문자열의 ^(시작)과 $(끝)도 단어의 경계에 해당
    • 예를 들어 “https://naver.com?id=123&sid=456&tid=789”에서 id만 추출하고 싶다고 하자.
      • “\bid=(\d+)” 정규표현식을 이용하면 sid와 tid는 제외하고 id만 추출을 할 수 있다. “s”와 “t”는 단어의 경계가 아닌 단어라서 \b에 해당하지 않는다.
  • ‘\b’와 ‘\B’의 차이
    • ‘\b’는 단어 경계, ‘\B’는 단어 경계가 아닌 것
    • ‘\b’의 반대개념
    • “abcdebcd”에서 “bcd”를 찾되, 뒤에 있는 “bcd”는 제외하려면
      • “bcd\B” 정규식을 이용하면 bcd 뒤에 단어 경계가 아닌 것이 와야하므로 맨 뒤에 있는 bcd는 제외된다.

참고