/* 정규식 */
- 정규식 연습장
- 기호
기호 |
예제 | 결과값 |
의미 |
* |
a * b * | aaaaa, bbb, aaabbb |
* 앞에 있는 문자가 '0'번 이상 반복 |
+ |
a + b + | aabbbb, ab, aaabbb |
+ 앞에 있는 문자들이 '1'번 이상 반복 |
[ ] |
[A-Z]* | ALL, VARS, ZOO |
대괄호 내부 문자 중 하나 출현 |
( ) |
(a*b)* | aaabaab, ababab, aaab |
괄호로 묶인 표현식 출현 |
{m,n} |
a{3,5}b{1,2} | aaab,aaaabb |
중괄호 앞 문자가 m번 이상, n번 이하 출현 |
[^] |
[^A-Z]* | cars, coffee, zem |
대괄호 내부 문자를 제외한 문자 출현 |
| |
a(b|c|d)f | abf, acf, adf |
| 사이 문자 중 하나가 출현 |
. |
a.b | a1b, a b, adb, a@b |
.위치에 문자 하나(글자,숫자,기호,공백 등)가 출현 |
^ | ^a | abba, aqqq | ^ 뒤 문자가 가장 맨 앞에 출현 |
\ |
\. \| \\ | . | \ |
특수문자 그대로 출현 |
$ |
[A-Z]*[a-z]*$ | EEasdf, ZZdfsd |
정규식 마지막에 위치하여 뒤에 오는 표현 전부 일치 |
?! |
^((?![A-Z]).)*$ | skek12312@3432 |
?! 뒤 문자를 호함하지 않음, ^(시작) $(끝)과 함께 사용 |
- 유용한 정규식 모음
/* PHP 정규식 */
- 문자열에서 숫자만 추출
preg_replace('/[^0-9]*/s','',$str);
- 이메일 확인
preg_match('/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i', $email);
/* javascript 정규식 */
- 숫자 3자리마다 콤마 반환
function numberCommas(x){
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
- 비밀번호 유효성 검사
영문자, 특수문자, 숫자 필수포함 8-20자리
/^(?=.*[a-zA-Z])(?=.*[\~\․\!\@\#\$\%\^\&\*\(\)\_\-\+\=\[\]\|\\\;\:\\'\"\<\>\,\.\?\/])(?=.*[0-9]).{8,20}$/
/* 마지막 업데이트 180209 */
'Develop' 카테고리의 다른 글
한글 모음(초성) 추출하기 : PHP (0) | 2018.03.22 |
---|---|
문자열 가리기 : PHP (1) | 2018.02.09 |
초보를 위한 python의 실행, window powershell (2) | 2017.10.11 |
설치해보자 Python (0) | 2017.08.30 |
MySQL 형식 정하기 : schema 스키마 (0) | 2017.08.20 |