반응형
문자열이 JS의 정규식과 일치하는지 확인
JavaScript (jQuery와 함께 사용할 수 있음)를 사용하여 문자열이 정규식과 일치하는지 확인하기 위해 클라이언트 측 유효성 검사를 수행하고 싶습니다.
^([a-z0-9]{5,})$
이상적으로는 true 또는 false를 반환하는 표현식입니다.
저는 JavaScript 초보자입니다. match()
필요한 작업을 수행합니까? 문자열의 일부가 전체가 아닌 정규식과 일치하는지 확인하는 것 같습니다.
regex.test()
원하는 것이 부울 결과이면 사용하십시오 .
console.log(/^([a-z0-9]{5,})$/.test('abc1')); // false
console.log(/^([a-z0-9]{5,})$/.test('abc12')); // true
console.log(/^([a-z0-9]{5,})$/.test('abc123')); // true
... ()
캡처가 필요하지 않으므로 정규 표현식에서를 제거 할 수 있습니다.
사용 test()
방법 :
var term = "sample1";
var re = new RegExp("^([a-z0-9]{5,})$");
if (re.test(term)) {
console.log("Valid");
} else {
console.log("Invalid");
}
다음을 사용할 수도 있습니다 match()
.
if (str.match(/^([a-z0-9]{5,})$/)) {
alert("match!");
}
그러나 여기에서test()
읽을 수있는 것처럼 더 빠른 것 같습니다 .
사이의 중요한 차이점 match()
과 test()
:
match()
문자열에서만 작동하지만 test()
정수에서도 작동합니다.
12345.match(/^([a-z0-9]{5,})$/); // ERROR
/^([a-z0-9]{5,})$/.test(12345); // true
/^([a-z0-9]{5,})$/.test(null); // false
// Better watch out for undefined values
/^([a-z0-9]{5,})$/.test(undefined); // true
/youregexp/.test(yourString)
문자열이 정규 표현식과 일치하는지 여부 만 알고 싶은 경우에만 사용 합니다.
다음은 특정 HTML 태그를 찾는 예이므로 /someregex/.test()
부울 을 반환하는 것이 명확합니다 .
if(/(span|h[0-6]|li|a)/i.test("h3")) alert('true');
let str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
let regexp = /[a-d]/gi;
console.log(str.match(regexp));
이 꽃을 시도하십시오 :
/^[a-z0-9\_\.\-]{2,20}\@[a-z0-9\_\-]{2,20}\.[a-z]{2,9}$/.test('abc@abc.abc');
진실
시험
/^[a-z\d]{5,}$/.test(str)
console.log( /^[a-z\d]{5,}$/.test("abc123") );
console.log( /^[a-z\d]{5,}$/.test("ab12") );
일치하는 항목이 없으면 null을 반환하는 execute 메서드를 사용하는 것이 좋습니다. 그렇지 않으면 유용한 개체를 반환합니다.
let case1 = /^([a-z0-9]{5,})$/.exec("abc1");
console.log(case1); //null
let case2 = /^([a-z0-9]{5,})$/.exec("pass3434");
console.log(case2); // ['pass3434', 'pass3434', index:0, input:'pass3434', groups: undefined]
참고 URL : https://stackoverflow.com/questions/6603015/check-whether-a-string-matches-a-regex-in-js
반응형
'programing tip' 카테고리의 다른 글
제네릭 유형 T의 클래스 인스턴스를 얻는 방법 (0) | 2020.10.02 |
---|---|
함수 이름을 문자열로 얻는 방법? (0) | 2020.10.02 |
어떤 Python 메모리 프로파일 러가 권장됩니까? (0) | 2020.10.02 |
C ++ 쌍에 해당하는 것은 무엇입니까? (0) | 2020.10.02 |
YAML과 JSON의 차이점은 무엇입니까? (0) | 2020.10.02 |