String 타입은 replace()
함수를 제공하며 이것을 이용하여 문자열의 특정 문자열을 다른 문자열로 변환할 수 있다. replace()
는 먼저 검색되는 1개의 문자열만 변환한다. 여러 문자열을 변환할 때는 정규 표현식을 이용하여 일치하는 모든 문자열을 변환할 수 있다.
문자열 안에 변경하려는 문자열을 여러개 있고 모든 문자열을 바꾸고 싶을 때, 정규식을 이용하여 모든 문자열을 변경할 수 있다.
정규식으로 찾으려는 문자열은 '/'로 감싸서, 파라미터로 들어가는 값이 정규식 임을 알려준다.
그리고, '/' 뒤에는 'g'라는 modifier를 붙여준다.
// 예시)
escapeStringHTML(str: any) {
str = str.replace(/</g, '<')
str = str.replace(/>/g, '>')
return str
},
'i'와 'g' modifier를 아래 예제와 같이 함께 적어주면 된다.
let str = 'apple, Banana, orange, banana';
let replaced_str = str.replace(/banana/gi, 'tomato');
document.write('변경 전 : ', str, '<br/>');
document.write('변경 후 : ', replaced_str, '<br/>');
//변경 전 : apple, Banana, orange, banana
//변경 후 : apple, tomato, orange, tomato