07
08

1. 정규표현식?

  • 특별한 문자를 조합하거나 확인할 때 사용하는 패턴이다.
  • 주로 test, String, match, replace, search, split  메서드와 같이 쓰인다.

2. 정규표현식 만드는 법

  • 따옴표를 ( " " )를 슬래쉬 ( / / )로 대신한다.
  • 특수문자나 영어 알파벳 철자를 넣어서 패턴을 만든다.
const str = /hello world/;
const str = new RegExp("hello world"); // RegExp객체의 생성자 함수를 호출. 결과는 같다.
  • 위의 두 가지 방법은 정규식이 계속 지속될 때는 첫 번째, 정규식의 패턴이 바뀌는 경우는 수정을 위해 함수를 사용하는 것이 좋다.

3. 어떻게 사용하는 것일까?

  • 포인트는 \와 /의 쓰임이다. 정규표현식에서 특수기호를 사용할 때 사용한다. 일반적인 문자열로 읽지 못하도록 만드는 것이다.
  1.  g : 전역 검색
  2. i : 영어 대소문자 비교 없이 검색
  3. m : g보다 넓게 줄이 바뀌어도 검색
  4. y : lastIndex의 속성에 숫자를 지정해서 y로 검색을 하면 지정해준 숫자의 index의 문자만 검색
  5. * : 반복되는 문자를 최대한 검색
  6. *? : 반복되는 문자를 최소한으로 검색
  7. a-z 혹은, A-Z 혹은,  ㄱ-ㅎ 혹은, 0-9 : 범위 지정
  8. . : 그 줄의 모든 문자열
  9. \d : 숫자
  10. \D : 숫자가 아닌 모든것
  11. \w : 영어와 숫자
  12. \W  : 영어랑 숫자 빼고 전부 다
  13. \s : 띄어쓰기
  14. \S : 띄어쓰기 제외하고 전부 다
  15. | : or
  16. [찾을 문자] : 찾고 싶은 문자를 찾아줌
  17. [^제외할 문자] : 제외할 문자를 빼고 모든 문자를 찾아줌. ( 대부분 ^ 는 부정 )
  18. ^시작할 문자 : 시작할 문자로 시작한다.
  19. 끝낼 문자$ : 끝낼 문자로 끝을 낸다.
  20. () : 그룹 검색과 분류 ( 주로 match에 사용)
  21. \b : 단어의 처음과 끝
  22. \B : 단어의 처음과 끝 빼고 전부 다

4. 정규표현식 연습

https://regex101.com/

 

regex101: build, test, and debug regex

Regular expression tester with syntax highlighting, explanation, cheat sheet for PHP/PCRE, Python, GO, JavaScript, Java. Features a regex quiz & library.

regex101.com

이렇게 보아서는 잘 이해가 안 되는 것이 정상이다. 필요한 부분에 찾아 사용하다 보면 적응이 쉽게 된다. 필요한 정규 표현식을 사용하여 문제 풀이 시간을 줄여보자!
COMMENT