상세 컨텐츠

본문 제목

50일차. DB 7 - 정규식 (REGEXP), 페이징 INTRO

수업 일지/Oracle DBMS

by NayC 2021. 4. 29. 09:35

본문

728x90

*정규식* 

 

www.regxlib.com

 

regxlib.com

 

regxlib.com

ex) 전화번호 입력 시, 맞는 패턴인지 확인해야 할 필요가 있음 

- 어제 배운건 ex) 박씨 성 가진 사람은 찾을 수 있지만, 그리고 박_ 이렇게 두 자리 찾도록 가능하지만

  '정해진' 누군가를 불러일으키는건 하지 못함. 정규식은 그게 가능하다.

- ex) 010 - 1120 - 1029 

       017 - 998 - 9876 (옛날 번호)

       01_ (이 안에 1,6,7,8,9만 와야 한다고 할 때) -> 01[1,6,7,8,9(대괄호 사용!) 

       가운데는 [0123456789]98 .... 가능하지만 너무 복잡! -> [0-9]98 혹은 \d (앞에 역슬래시임)

       \d\d\d ... 반복되는거 불편 -> \d{4} 이건 숫자 4개를 의미하는 것 

- 전화번호를 고쳐보자 01[0,1,6,7,8,9] - \d{3} - \d{4}

  문제발생. 요즘 전화번호는 가운데가 4자리. -> 가운데는 \d{3,4) (3 또는 4 라는 것) 

 

www.regextester.com/

 

Regex Tester and Debugger Online - Javascript, PCRE, PHP

Regex Tester requires a modern browser. Please update your browser to the latest version and try again.

www.regextester.com

앞에 a 뒤에 bb가 붙어도 match라고 나오다닛...! 

Q. 이거 no match라고 나오게 하기 위해서는 어떻게 해야하나 

-> 앞에 ^, 뒤에$를 붙이면 된다. 

 

정규식 - 크롤링할 때도 많이 쓴다. (담아와야 하는 개념으로서)

 

ex) 이메일 담아올 때, 이메일 형식으로만 된 걸 담아오는 것

- abc@naver.com 이면

  오라클이면 %@%.%

  - 이러면 이메일은 문자로만 시작하는데 이건 숫자로도 시작해도 참값이 나옴ㅠ

-> 정규식은 확! 막을 수 있음. (문자열음 촘촘하게 방어 가능) 

    [a-z] 라고도 할 수 있지만 -> \w (역슬래시와 w)

cf) \W (대문자 W를 써주면) 반대의 의미

 

-> 첫 글자는 숫자가 오면 안되므로 [a-zA-Z]\w

[a-zA-Z]\w 다음에 이 셋 중에 뭐가 와야 할까. 

-> *

 

[a-zA-Z]\w*@[a-zA-Z]\w*.[comnet] 

-... 이러면 c or o or m or... 이런거라서 

 -> 

[a-zA-Z]\w*@[a-zA-Z]\w*.(com|net|org)

앞 뒤에 다른거 들어가게 하고 싶지 않으면, 앞 뒤로 ^, $ 붙여주고!

 

 

정규식은 이 정도. 

더 깊은 내용은 나중에. 

 


오라클을 가보자. 

 

정규식 REGEXP

 

 

정규식의 추가적인 기능 

대체하기

찾아내기?

잘라내기

 

이건 스스로 더 공부하라고 하심! 


ajax 예제로 가자

- 서블릿 활용해서 자바스크립트 활용하는... 

 

다수결로 인해서 오라클을 더 해보자

 

//

 

*ROWNUM 그리고 행 제한하기*

 

게시글이 1억개인데, 조회한다고 1억개가 다 나와버리면... 

-> PAGING (페이지를 여러개로 나눠서 보는 것)

이걸 하기 위해 사용하는 방식이 ROWNUM 

 

이게 PAGING

두 번째 페이지 BETWEEN 6 AND 10 하면 안 나옴

 

ROWNUM >= 1 이면 차곡 차곡 쌓이는데

저렇게 > 5 해버리면 다 ROWNUM이 1이어서 다 실격 실격됨 ㅠ 

 

// 그 대안은 내일 배우도록 하겠다. 

 

728x90
반응형

관련글 더보기