database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 39551 게시물 읽기
No. 39551
오라클 정규식에 대해 질문드립니다.
작성자
정명곤(jinrang)
작성일
2012-07-20 15:05
조회수
5,778

대문자 소문자 숫자 특수문자가 혼합된 8자 이상의 문자를 찾아오려고 합니다.(패스워드 패턴입니다)

인터넷을 뒤지고 공부하고 참고해서 

((?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[[:punct:]]).{8,})

위와 같은 정규식 구문이 만들어 졌습니다.

약간의 문제가 있지만  아래와 같은 패턴에 대해 모두 만족하는 정규식이 만들어졌지요.

Abcdef1234!
1qA!jijiji test 
1qaz!QAZ abc
Abcde1345
1qA!QAZ
!QAZ1qaz
zaq1ZAQ!
 
 
그런데 이걸 오라클 정규식에 대입하려고 하니
 
?=   <-- 이구문이 작동이 안되는것 같더군요. 에러는 나지 않습니다.
 
오라클 정규식 항목을 찾아보니 정규식 연산자에는 ?=  부분이 없는것 같습니다.
 
이런저런 시도를 해보고 있습니다만 능력 부족으로 잘 되지 않는 군요.
 
단순히 (?[a-z])(?[A-Z])(?[0-9])
 
이런식으로 넣으면
 
aA0 (O)
A0a (X)
Aa0 (X)
 
이런식으로 순서가 맞는 경우에만 매칭이 되지
포함이 되는지 아닌지에 대해서는 체크가 되지 않습니다.
 
도움 부탁드립니다

이 글에 대한 댓글이 총 1건 있습니다.

시간이 여유 있으면 더 쉽게 할텐데...

일단 필요한 정보만 드립니다.

WITH tab AS
(
 SELECT '111'  zip FROM dual UNION ALL
 SELECT '222'  zip FROM dual UNION ALL
 SELECT '333'  zip FROM dual UNION ALL
 SELECT 'zz5'  zip FROM dual UNION ALL
 SELECT 'yA5'  zip FROM dual UNION ALL
 SELECT '734'  zip FROM dual UNION ALL
 SELECT 'zZ1$1234'  zip FROM dual UNION ALL
 SELECT 'junsunH1!' zip FROM dual
 )
 SELECT zip
  FROM tab
 WHERE REGEXP_LIKE(zip, '[[:digit:]]')  -- 숫자포함
 AND REGEXP_LIKE(zip, '[[:lower:]]')    -- 소문자포함
 AND REGEXP_LIKE(zip, '[[:upper:]]')    -- 대문자포함
 AND REGEXP_LIKE(zip, '[[:punct:]]')    -- 특수문자포함
 AND length(zip) > 7  -- 8자 이상

황준선(okclick)님이 2012-07-25 10:41에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
39554'%'가 있을때 숫자계산하기 [1]
초보
2012-07-23
4275
39553oracle golden gateway 에 대하여 아시는 분 계시나요? [2]
김흥수
2012-07-23
4738
39552데이터 중에 깨진한글 파일 등을 조회하는 방법이 있을까요
강대성
2012-07-20
4753
39551오라클 정규식에 대해 질문드립니다. [1]
정명곤
2012-07-20
5778
39550PL/SQL 살려주세요 ㅠㅠ [7]
햇살한조각
2012-07-20
6177
39549oracle 에서 mysql 의 memorydb 같은게 있나요? [3]
이철림
2012-07-20
5038
39548drop table에 관해 문의 드립니다. [2]
태경파
2012-07-20
4765
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다