생활코딩 _ 정규표현식 패턴

Sang heon lee·2021년 9월 23일
0

개념 및 기능 정리

목록 보기
12/17

학습 사이트
https://opentutorials.org/course/909/5143
http://zvon.org/comp/r/tut-Regexp.html#Pages~Contents

Page 1

  • 정규표현식은 대소문자를 구분한다.

Page 2

  • 문자열 내의 띄어쓰기, 기호 등도 확인한다.

Page 3 시작,끝 부터 검색

  • ^who => 문장의 시작부터 who를 검색 (^ : 캐럿)
  • who$ => 문장의 끝부터 who를 검색

Page 4 이스케이프 문자

  • \ => 백슬러쉬, 이스케이프 (엔터키 위)
  • \^ => ^ 을 Page 3의 정규표현식 도구가 아닌 문자로 인식한다.
  • \$ => $ 을 Page 3의 정규표현식 도구가 아닌 문자로 인식한다.

Page 5 모든 문자

  • . => 모든 문자(character) 1개를 나타낸다. (wildcard의 역할을 한다.)
  • ...... => 문자 6개를 나타낸다.

Page 6

  • \. => . 을 Page 5의 표현식이 아닌 문자로 인식한다.

Page 7 범위 표현식

  • [] => 선택가능한 범위의 표현식
  • [oyu] => o 또는 y 또는 u 인 문자 1개를 표현
  • [dH]. => (d 또는 H 인 문자 1개 + any character 1개) 인 2자리 문자

Page 8

  • [C-K] => C에서 부터 K 까지의 범위 중에 문자 1개
  • [CDEFGHIJK] => 위의 표현식과 같음
  • [C-Ka-d2-6] => C - K 또는 a - d 또는 2 - 6, 3가지 범위 중 문자 1개

Page 9

  • [^] => 범위 표현식 내부의 ^ 은 not 을 의미
  • [^W-Z] => W,X,Y,Z 을 제외한 문자 1개

Page 10

  • () => 문자열로 검색
  • (on|ues|rida) => 문자열 내부에서 'on' 또는 'ues' 또는 'rida'를 표현
  • (Mon|Tues|Fri)day => 'Monday', 'Tuesday', 'Friday' 표현

Page 11 수량자(quantifier)

  • a* => a가 0,1,무한개를 나타냄
  • a+ => a가 1,무한개를 나타냄
  • a? => a가 0,1개를 나타냄

Page 12

  • .* => 모든 텍스트
  • [-@]* => - 또는 @ 인 한 문자([-@])가 0 부터 무한개인 표현식

Page 13

  • \*+ => *가 1개 부터 무한대까지 표시
  • -@+- => -로 시작하고 -로 끝나면서 사이에 @가 1개부터 여러개
  • [^ ]+ => 공백이 아닌 표현이 1개 부터 무한대까지 표시

Page 14

  • -X?XX?X => -로 시작하고 X 앞에 X가 0 또는 1개가 2번 반복

Page 15 수량 선택자

  • .{5} => - . 이 5개인 표현식
  • [els]{1,3} => [els] 인 범위에서 최소 1개 최대 3개인 표현식
  • [els]{3,} => [els] 인 범위에서 3개 이상

Page 16

  • * = {0,}
  • + = {1,}
  • ? = {0,1}

Page 17 수량 선택자 뒤의 ?

  • ? 가 붙으면 원래 수량자에서 최소 갯수를 표현한다.
  • *? = 0개를 의미
  • +? = 1개를 의미
  • ?? = 0개를 의미

greedy // lazy
예시) <div> test1 </div><div> test2 </div>
greedy 수량자
탐색자) <div> .* </div> => 결과)<div> test1 </div><div> test2 </div>
lazy 수량자
탐색자) <div> .*? </div> => 결과)<div> test1 </div>

Page 18

  • \w = [A-z0-9_] w=word
  • 알파벳 대,소문자, 숫자, '_'를 표현하는 1개

Page 19

  • \W = [^A-z0-9_]

Page 20

  • \s => 띄어쓰기 를 표현
  • \S => 띄어쓰기 를 제외한 나머지를 표현

Page 21

  • \d = [0-9]
  • \D => 숫자를 제외한 나머지를 표현

Page 22 word boundary

  • \b. => 단어 하나에서 시작하는 . 표현 하나
  • .\b => 단어 하나에서 끝나는 . 표현 하나
    예시) cat concat
    탐색자) \bcat => 결과)cat
    탐색자) cat\b => 결과)concat

Page 23

  • \B => \b 의 반대를 표현
  • \B. => 문자열 하나에서 시작하는 . 하나 다음거를 표현
  • .\B => 문자열 하나에서 끝나는 . 하나 다음거를 표현

Page 24

  • \A... => 단락 시작의 문자 3개를 표현

  • ...\Z => 단락 끝의 문자 3개를 표현

  • ^... => 행마다 시작의 문자 3개를 표현

  • ...$ => 행마다 끝의 문자 3개를 표현

Page 25

  • \w+(?=X) => X 인 문자가 검색될때까지 표현하나 X는 표현하지 않음.
profile
개초보

0개의 댓글