str = "Hello"
let lstr = str.toLowerCase(); => 문자열 내 대문자를 소문자로 변환
let ustr = str.toUpperCase(); => 문자열 내 소문자를 대문자로 변환
주로 텍스트의 유효성을 검사하거나 내부에 포함되어 있는 것을 replace, split 과 함께 쓴다.
정규 표현식의 형식은 /패턴/플래그 와 같이 쓴다. 패턴은 검색할 내용, 플래그는 검색할 옵션을 말한다.
패턴 | 설명 |
---|---|
a-z, A-Z | 영어 알파벳 |
ㄱ-ㅎ | 한글문자 |
0-9 | 숫자 |
. | 모든 문자열 |
\d | 숫자 |
\D | 숫자가 아닌것 |
\w | 영어 알파벳, 숫자, 언더스코어 |
\W | /w 가 아닌것 |
\s | space 공백 |
\S | space 공백이 아닌 것 |
\특수 기호 | 특수기호 |
기호 | 설명 |
---|---|
[] | 괄호 문자들 중 하나 |
[^문자] | 괄호 문자들 제외한 것 |
^문자열 | 문자열로 시작하는 것 |
문자열$ | 특정 문자열로 끝나는 것 |
or 기호 | OR |
기호 | 설명 |
---|---|
? | 최대 한번 |
* | 있거나 없거나 |
+ | 최소 한개라도 있으면 |
{n} | n개 |
{Min,} | 최소 min개 이상 |
{,Max} | 최소 max개 이상 |
{Min, Max} | min개 이상, Max개 이하 |
플래그 | 의미 |
---|---|
g | Global 모든 문자 검색(안쓰면 매칭되는 첫 문자만 검색) |
i | 대소문자 구분 안함 |
m | 여러 행의 문자열에 대해 검색 |
정규식 예시 문제
카카오 2021 코딩테스트 : 신규아이디 추천
https://programmers.co.kr/learn/courses/30/lessons/72410?language=javascript
new_id.toLowerCase();
new_id.replace(/[^/w-_.]/g, "")
new_id.replace(/\.{2,}/g,".")'
4.마침표(.)가 처음이나 끝에 위치한다면 제거합니다.
new_id.replace(/^\.|\.$/g, "")
new_id.replace(/^$/,'a')
new_id.splice(0,15).replace(/\.$/g,"")
const len = answer.length;
return len > 2 ? answer : answer + answer.charAt(len - 1).repeat(3 - len);