1. 연속된 문자 체크용 함수
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
/*********************************************************************************************
* Function명 : stck()
* 설명 : 정규식(비밀번호 체크용)
*********************************************************************************************/
function stck(str, limit) {
var o, d, p, n = 0, l = limit == null ? 4 : limit;
for (var i = 0; i < str.length; i++) {
var c = str.charCodeAt(i);
if (i > 0 && (p = o - c) > -2 && p < 2 && (n = p == d ? n + 1 : 0) > l - 3)
return false;
d = p, o = c;
}
return true;
}
|
cs |
2. 해당 함수를 이용한 연속된 문자 사용 제한 및 6~20자리 영문자, 숫자 혼합 제한 체크
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | //비밀번호 규칙 설정 //6~20자리 문자열 숫자와 문자와 같이 있어야 함 var regexPw = /^.*(?=.{6,20})(?=.*[0-9])(?=.*[a-zA-Z]).*$/; var input = "asdf3211a"; if(input != this.ds_list.getColumn(0,"USER_PW_CONFIRM")){ this.util.alert("비밀번호가 일치 하지 않습니다.\n동일한 비밀번호를 입력해 주세요."); return false; } if (regexPw.test(input)) { //연속된 숫자 테스트 var regexNo = /(\w)\1\1/; if (!regexNo.test(input)) { if (!stck(input, 3)) { this.util.alert("연속된 3자리 문자는 사용할 수 없습니다."); return false; } } else { this.util.alert("3개 이상의 동일한 문자는 사용할 수 없습니다."); return false; } } else { this.util.alert("비밀번호는 영문과 숫자를 혼합하여 \n6자리 이상 20글자 미만으로 설정해주세요."); return false; } | cs |
'Language > JavaScript' 카테고리의 다른 글
[JavaScript]배열 메소드 forEach(), map(),filter(),find(),reduce() (0) | 2020.08.18 |
---|---|
[JavaScript]값 - 1.2 문자열 (0) | 2020.07.24 |
[JavaScript]값 - 1.1 배열 (0) | 2020.07.22 |
[JavaScript] type,typeof (0) | 2020.07.13 |
Nexa17 + jsp + 첨부파일 upload 구현 (0) | 2020.02.02 |