RegExp
정규표현식
/ /사이에 쓴다.
const Validate = (value) => {
let check = /[a-zA-Z0-9]/;
return check.test(value)
}
const validation = Validate("만두");
console.log(validation); // false
if(!validation) {
console.log("엥~") // "엥~"
}
영문 대소문자, 숫자만 가능하게 했을 때 한글을 입력하면 console에 false / "엥~"이 뜬다.
/\d{3}-\d{3,4}-\d{4}/.test(”010-123-5678”) // true
디짓(숫자) “d”에서 탈출해줘(이스케이프), \
\d → 디짓(숫자)
?하면 한 개 혹은 0개, + 하면 한 개 이상,
정규표현식 - 이 조건에 맞는 내용이 있으면 true!
꼭 맞게끔 하고 싶다면, 시작점과 끝 점을 명시해야 한다. (^,$)
/^\d{3}-\d{3,4}-\d{4}$/
이메일
문자 혹은 숫자 \w
/^\w+@\w+\.\w+$/
정규표현식에서 .은 문자 . 을 의미하는 게 아님, 모든 문자열을 의미함
띄어쓰기 \s
문자만은 없음. [a-z]이렇게 쓸 수 있다.
내가 써놨던 필긴데 무슨 소린지 잘 모르겠다...
아직은 대충만 알아도 갖다쓰면 되지 않을까 싶다.
메서드설명
exec() | 문자열에서 일치하는 부분을 탐색합니다. 일치 정보를 나타내는 배열, 또는 일치가 없는 경우 null을 반환합니다. |
test() | 문자열에 일치하는 부분이 있는지 확인합니다. true 또는 false를 반환합니다. |
match() | 캡처 그룹을 포함해서 모든 일치를 담은 배열을 반환합니다. 일치가 없으면 null을 반환합니다. |
matchAll() (en-US) | 캡처 그룹을 포함해서 모든 일치를 담은 반복기를 반환합니다. |
search() | 문자열에서 일치하는 부분을 탐색합니다. 일치하는 부분의 인덱스, 또는 일치가 없는 경우 -1을 반환합니다. |
replace() | 문자열에서 일치하는 부분을 탐색하고, 그 부분을 대체 문자열로 바꿉니다. |
replaceAll() (en-US) | 문자열에서 일치하는 부분을 모두 탐색하고, 모두 대체 문자열로 바꿉니다. |
split() | 정규 표현식 또는 문자열 리터럴을 사용해서 문자열을 부분 문자열의 배열로 나눕니다. |
출처 : MDN 정규표현식
문자열 내부에 패턴과 일치하는 부분이 존재하는지만 알아내려면 test()나 search() 메서드를 사용한다.
일치에 관한 추가 정보가 필요할 때 exec()과 match() 메서드를 사용한다.
https://developer.mozilla.org/ko/docs/Web/JavaScript/Guide/Regular_Expressions
정규 표현식 - JavaScript | MDN
정규 표현식, 또는 정규식은 문자열에서 특정 문자 조합을 찾기 위한 패턴입니다. JavaScript에서는 정규 표현식도 객체로서, RegExp의 exec()와 test() 메서드를 사용할 수 있습니다. String의 match(), matchA
developer.mozilla.org
'프론트엔드✏️ > 개인공부' 카테고리의 다른 글
[redux] props지옥 벗어나기,,, - 도전 (1) | 2022.09.21 |
---|---|
[자동로그아웃/타이머] setinterval() - ★개인 포폴에 붙여보자 (2) | 2022.09.21 |
유효성 검사 - 작성 중 (0) | 2022.09.20 |
[react-query] QueryClient, - 작성 중 (0) | 2022.09.20 |
useEffect vs useLayoutEffect (1) | 2022.09.19 |