What is a Regular Expressions?
- Not matching exact strings
- Instead, matching patterns of strings
정규표현식, 또는 정규식은 특정 문자 조합을 찾기위한 패턴이다.
Regular Expressions = regex (Regg-ex or Redge-ex로 발음한다.)
🌟 정규표현식 연습하기 좋은 사이트
regex101
FLAVOR에서 언어 선택 후
REGULAR EXPRESSION에 정규표현식을 입력하고
하단의 TEST STRING에 테스트할 문자를 입력하면
오른쪽 하단의 MATCH INFORMATION에서 매칭되어 테스트에 통과한 항목들만 뜬다.
? + * 기본 수량자
Match the string
* 정규식의 시작과 끝은 / 를 사용해서 구분한다.
ex) 단어 hey
/hey/
h : 문자 h
e : 다음에 바로 e
y : 다음에 바로 y
Quantifier 수량자
수량자는 찾을 항목의 문자, 그룹 또는 문자 클래스의 인스턴스 수를 지정한다.
쉽게말해 어떠한 패턴이 몇 번 등장하는가를 말한다.
? (앞에있는) 해당 문자가 0번 or 1번 나올 수 있음
+ 최소한번이상 or 여러번
* 0번 or 여러번
? 예시
e가 없는 hy나, 한번나온 hey가 match된다.
+ 예시
e가 1개는 무조건 있고, 다음 문자인 y가 나올 때 까지의 수는 제한없다.
* 예시
e가 없거나, 제한없이 계속 반복된다. (다음문자 y가 나올 때 까지)
특수 문자
정규식에서 일부 문자는 한 가지 이상의 의미를 가진다.
예를들어 . (dot)을 입력하고 + 부호를 붙여 dot이 한 번 이상 입력된 단어를 찾고 싶은데,
! (느낌표)를 한 번 이상 입력한 단어들도 매치가 된다.
이러한 특수문자 + ? * . { } [ ] 9 0 ^ $ 등은 특수문자의 기능이 아닌 실제 해당 문자를 원할 때
\ (back slash)를 특수문자 앞에 추가하여서 사용한다.
/hello\.+/
hello ▶ 문자 string
\.+ ▶ 하나이상의 .(dot)
{ } 중괄호 수량자
+ 혹은 * 수량자는 0이나 1이상의 수량을 매치시키는데,
좀 더 정확한 수로 매치되는 문자를 찾고 싶을 때 중괄호 수량자를 사용한다.
1. { }에 콤마로 구분된 2개의 숫자 - 2개의 숫자를 포함하는 그 사이의 숫자들 만큼 반복
ex) { 1, 3 } = 1과 3사이 (3포함)
2. { }에 숫자 하나 - 정확하게 그 숫자 만큼의 반복을 허용
ex) {3} = 3번 반복
3. { }에 숫자와 콤마로 끝 - 그 숫자 이상
ex) { 3 , } = 3번이상 반복
ex1) {1.3} comma가 1 or 2 or 3번 반복된 문자만 match
ex) {3} comma가 3번 반복된 문자만 match
ex) {3,} comma가 3번 이상 반복된 문자 match
'Archive' 카테고리의 다른 글
[AWS] 인스턴스 종료 & 과금 결제 환불 신청 (0) | 2022.11.20 |
---|---|
[SEO] 검색엔진 최적화 (네이버 검색 최적화 설정 방법) (0) | 2022.11.16 |
[Git] Merge - fast Forward merge, commit merge (merge 방식) (0) | 2022.10.26 |
[Git] Git 사용 기초 ( local-remote / branch-head / push-pull ) (0) | 2022.10.26 |
[React] TDD in reactjs with RTL and Jest - (2)기초 예제 (0) | 2022.10.25 |