728x90
반응형

정규표현식
정규식 표현으로 문자열에서 특정 문자의 조합을 찾을 수 있습니다.
정규표현식 객체 주요 패턴
| 패턴 | 설명 |
|---|---|
| abc | abc 문자열을 검색합니다. /abc/는 'abc' |
| [abc] | a, b, c 중 문자 하나를 검색합닌다. /[abc]d/는 'ad', 'bd', 'cd' |
| [^abc] | a, b, c를 제외한 문자 하나를 검색합니다. /^[abc]d/는 'ed', 'fd', 'gd' |
| [A-Z] | 알파벳 대문자 문자를 검색합니다. |
| [a-z] | 알파벳 소문자 문자를 검색합니다. |
| [0-9] | 0-9까지의 숫자를 검색합니다. |
| . | 하나의 문자를 검색합니다. 만약 '마침표' 문자 그대로의 의미를 사용할 경우 '₩.'으로 표현해야 합니다. |
| \w | 알파벳, 숫자, _를 검색합니다. |
| \W | 알파벳, 숫자, _를 제외하고 검색합니다. |
| \d | 숫자를 검색합니다. |
| \D | 숫자를 제외하고 검색합니다. |
| \s | 하나의 공백을 검색합니다. |
| \S | 공백을 제외하고 검색합니다. |
| ^ | 행의 첫 문자가 일치해야 함을 의미합니다. |
| $ | 행의 끝 문자가 일치해야 함을 의미합니다. |
| * | *앞의 문자가 0번 인상 반복을 의미합니다. /a*b/는 'b', 'aab', 'aaab', 'aaa...b' |
| + | + 앞의 문자가 1번 이상 반복을 의미합니다. /a+b/는 'ab', 'aab', 'aaab', 'aaa...b' |
| ? | ? 앞의 문자가 0번 또는 1번 이상 반복을 의미합니다. /a?b/는 'b', 'ab' |
| {} | /₩d{3}/은 숫자 3개를 의마합니다. /₩d{3,5}/은 숫자 3~5개를 의미합니다. /₩d{3,}/은 숫자 3개 이상을 의미합니다. |
| a|b | a or b를 의미합니다. |
| (abc) | 그룹화를 의미합니다. |
정규표현식 객체 주요 메서드
| 속성 값 | 속성 설명 |
|---|---|
| test() | 정규표현식과 일치하는 문자열이 있으면 true, 없으면 false를 반환합니다. |
| var reg = /Javascript/; console.log(reg.test('Javascript')); //true console.log(reg.test('script')); //false |
|
| match() | 정규표현식과 일치하는 문자열을 배열로 만듭니다. 일치하는 문자열이 없으면 null을 반환합니다. |
| var reg = /Javascript/; str = 'Java script'; console.log(str.match(reg)); //null |
정규표현식 객체 플래그
| 플래그 | 설명 |
|---|---|
| i | 대소문자 구분 없이 정규표현식과 문자열을 비교합니다. |
| var reg1 = /javascript/; var reg2 = /javascript/i; car str = 'Javascript'; console.log(reg1.test(str)); //false console.log(reg2.test(str)); //true |
|
| g | 문자열 전체를 정규표현식과 비교합니다. |
| var reg1 = /a/; var reg2 = /a/g; car str = 'javascript'; console.log(str.match(reg1)); //[a] console.log(str.match(reg2)); //['a','a'] |
|
| m | 여러 행의 문자열을 정규표현식과 비교합니다. |
| var reg1 = /^s/; var reg2 = /^s/m; var str = 'javascript₩nscript'; console.log(str.match(reg1)); //null console.log(str.match(reg2)); //['s'] '^s'는 행의 첫 번째 문자가 s로 시작하는 것을 의미하고, '₩n'은 행 바꿈을 의미합니다. |
'JavaScript' 카테고리의 다른 글
| 문자열 결합 / 템플릿 문자열 (2) | 2022.08.17 |
|---|---|
| split() (2) | 2022.08.17 |
| slice() / substring() / substr() (4) | 2022.08.16 |
| indexOf( ) / lastIndexOf( ) (3) | 2022.08.16 |
| 내장 함수 (3) | 2022.08.13 |
댓글