728x90
정규표현식 (RegExp)
문자열을 검사하거나 처리할 때 사용되는 도구로 특정 패턴과 일치하는 텍스트를 탐색, 대체할 수 있으며, 효율적인 문자열 처리를 제공합니다.
정규표현식 생성 방법
- 리터럴 표기법
- /패턴/플래그
- 예: /abc/i
- RegExp 생성자 사용
- new RegExp('패턴', '플래그')
- 예: new RegExp('abc', 'i')
- 백슬래시 사용
- 특정 문자(+, * 등)를 사용하려면 백슬래시(\)를 붙여야 합니다.
- 예: /a\+/와 new RegExp('a\\+')는 동일한 표현.
정규표현식 메서드
- test 메서드
- 문자열이 정규 표현식과 일치하는지(오름차순 알파벳) 확인하여 true나 false를 반환.
console.log(/abc/.test("abcde")); // true console.log(/abc/.test("abxde")); // false
- 문자열이 정규 표현식과 일치하는지(오름차순 알파벳) 확인하여 true나 false를 반환.
메타 문자
- 정규표현식에서 자주 사용하는 메타 문자:
- \d : 숫자 (0-9)
- \w : 영숫자 (a-z, A-Z, 0-9, _)
- \s : 공백 문자 (스페이스, 탭, 줄 바꿈)
- \D : 숫자가 아닌 문자
- \W : 영숫자가 아닌 문자
- \S : 공백이 아닌 문자
- . : 개행 문자를 제외한 모든 문자
범위 지정
- [0-9]와 같이 대괄호([]) 안에서 하이픈(-)을 사용해 범위를 지정.
예: /[a-z]/는 모든 소문자 알파벳과 일치.
ex)
숫자 포함 여부 확인
console.log(/[0-9]/.test("Hello123")); // true
console.log(/[0-9]/.test("Hello")); // false
특정 단어 포함 확인
console.log(/hello/i.test("Hello World")); // true (대소문자 무시)
복잡한 패턴 찾기
- 이메일 주소 확인:
let emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
console.log(emailRegex.test("example@mail.com")); // true
console.log(emailRegex.test("not-an-email")); // false
문자열 대체
let result = "2024-12-17".replace(/-/g, "/");
console.log(result); // "2024/12/17"
참고
정규식 메타 문자 : http://www.ktword.co.kr/test/view/view.php?no=5851
정규식 : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/RegExp/test
'내일배움 정리 > JS 문법 공부' 카테고리의 다른 글
문자열 메서드 (0) | 2024.12.19 |
---|---|
프리마(정리하기) (0) | 2024.12.05 |
(작성중)구조 분해할당 : 여러 변수를 한번에 할당하기 (0) | 2024.12.03 |
화살표함수(작성중) (0) | 2024.12.03 |
형변환, 숫자의 진법변환 (0) | 2024.12.03 |