정규표현식

Mongle·2020년 6월 17일
0

알아두면 유용한 정규표현식

  • r'문자열' : 이스케이프 문자를 적용하지 않고 기호를 사용할 수 있음
  • . (dot): dot 하나 당 하나의 문자와 일치시킨다.
  • {숫자} : 숫자의 개수 만큼 문자의 개수가 늘어난다.
    ex) .../test1/0123456789 (O)
re_path(r'test1/(.{10})/$', views.test1), # 10자리 아무거나 들어올 수 있음
  • ^ (caret) : 오른쪽의 표현식으로 시작하는 문자열과 일치시킨다.
    ex) .../test3/test2abcde123 (O)
re_path(r'^test2', views.test2),  # test2뒤에 뭐가 붙든 상관 없음
  • $ (dollar): 왼쪽의 표현식으로 끝나느 문자열과 일치시킨다.
    ex) .../test3/abcde123test3 (O)
re_path(r'test3$', views.test3),  # test3앞에 뭐가 있든 상관 없음
  • ? (question) : 퀘스천 왼쪽의 표현식으로 끝나는 문자열이 없거나 있어야 하는 경우
    ex) .{3}? => 세개의문자 중 하나의 문자가 없거나 있어도 된다.
re_path(r'test4/(.{2}?)', views.test4), #한 글자의 여유를 주고 싶을 때, ??두글자 여유
  • *(asterisk) : 왼쪽의 표현식으로 끝나는 문자열이 0개 이상
    ex) .../test5/0123123abcd (O) , .../test5/ (O)
re_path(r'test5/(.*)', views.test5), #.이 몇 개 있어도 상관없음
  • +(plus) : 플러스 왼쪽의 표현식으로 끝나는 문자가 1개 이상
    ex) .../test5/0123123abcd (O) , .../test5/ (X)
re_path(r'test6/(.+)', views.test6), # 없으면 안됨. 
  • [0-9] : 0 ~ 9 사이의 하나 값 처리 된다.
  • [a-z] : 영문 소문자 하나 값 처리 된다.
  • [A-Z] : 영문 대문자 하나 값 처리 된다.
  • [ㄱ-힣] : 한글 하나 값 처리 된다.
  • {숫자, 숫자} : 첫 숫자 ~ 끝 숫자 처리 된다.
  • [0-9]{3,5} : 숫자 3개 ~ 숫자 5개 처리 된다.
  • \d : [0-9] 와 동일 하게 처리된다
  • \D : [0-9] 을 제외시키고 처리 된다.
  • \w : [a-zA-Z0-9_] 표현식과 동일하게 처리된다.
  • \W : [a-zA-Z0-9_] 표현식을 제외하고 처리 된다.
re_path(r'test12/([0-9a-zA-z]+[@][0-9a-zA-z]+[.][0-9a-zA-z]+)', views.test12), 
#이메일은 대략 이렇게 만들어 볼 수 있다. 
profile
https://github.com/Jeongseo21

0개의 댓글