May 21, 2020
정규표현식(Regular Expression)은 문자열을 처리하는 방법 중의 하나로 특정한 조건의 문자를 ‘검색’하거나 ‘치환’하는 과정을 매우 간편하게 처리 할 수 있도록 하는 수단이다.
정규표현식 사용 방법을 간단하게 알아보자.
let pattern1 = /a/;
let variableWord = 'a';
let pattern2 = new RegExp(variableWord);
abcabaAbcabbbcAbc
라는 문자열 중에 Abc
라는 모든 문자열을 ___
로 바꾸려고 한다.
let pattern = "Abc";
let text = "abcabaAbcabbbcAbc";
console.log(text.replace(/Abc/g, '___')); // abcaba___abbbc___
console.log(text.replace(/pattern/g, '___')); // abcabaAbcabbbcAbc
Abc
라는 모든 문자열을 ___
로 잘 치환된다.pattern
이라는 변수를 사용하여 Abc
라는 모든 문자열을 ___
로 치환하고 싶지만, pattern
이 변수로 인식되지 않고 하나의 문자열 값으로 인식되기 때문에 원하는 결과를 얻을 수 없다.let pattern = "Abc";
let text = "abcabaAbcabbbcAbc";
let regexOne = new RegExp(pattern); // 일치하는 패턴 중 최초 등장하는 패턴 한 번만 찾음
let regexAll = new RegExp(pattern, "g"); // 모든 패턴을 찾음
let regexAllCase = new RegExp(pattern, "gi"); // 대소문자 구분 없이 모든 패턴을 찾음
console.log(text.replace(regexOne, '___')); // abcaba___abbbcAbc
console.log(text.replace(regexAll, '___')); // abcaba___abbbc___
console.log(text.replace(regexAllCase, '___')); // ___aba___abbbc___
console.log(text); // abcabaAbcabbbcAbc