🍓𝗪𝗲𝗯/𝖩𝖺𝗏𝖺𝖲𝖼𝗋𝗂𝗉𝗍
JavaScript 특정 문자 치환 방법: replaceAll 함수사용과 정규식을 사용한 replace()
안오늘
2021. 7. 10. 11:35
1. replaceAll() 함수 사용
replace는 첫번째 문자만 바꿔주기 때문에, 문자열에 있는 모든 특정문자를 치환하기 위해서는 replaceAll을 사용해야 한다.
function replaceAll(str, searchStr, replaceStr) {
return str.split(searchStr).join(replaceStr);
}
2. 정규식 사용
replace(/o/g, "*") : o를 *로 전체 치환한다.
replace(/o/gi, "*") : o를 *로 대/소문자 구분 없이 전체 치환한다.
g: 발생할 모든 pattern에 대한 전역 검색
i: 대/소문자 구분 안함
특수문자 치환 시 \를 붙여주어야 한다.
관련문제 : 제코베 자바스크립트 39번. 오타 수정하기
혜원이는 평소 영타가 빠르고 정확한 것을 친구들에게 자랑하고 다녔습니다. 반 친구들이 혜원이의 타자 속도가 빠르다는 것을 모두 알게 되자 혜원이는 모두의 앞에서 타자 실력을 보여주게 됩니다. 그런데 막상 보여주려니 긴장이 되서 문장의 모든 e를 q로 잘못 친 것을 발견했습니다. 혜원이는 프로그램을 돌려 재빠르게 모든 q를 e로 바꾸는 프로그램을 작성하려고 합니다. 문장이 입력되면 모든 q를 e로 바꾸는 프로그램을 작성해 주세요.
입출력
입력 : querty
출력 : euerty
입력 : hqllo my namq is hyqwon
출력 : hello my name is hyewon
// 1. 함수 사용
const word = prompt('문장을 입력하세요.');
function replaceAll(str, searchStr, replaceStr) {
return str.split(searchStr).join(replaceStr);
}
console.log(replaceAll(word, "q", "e"));
// 2. 정규식 사용
const data = prompt('문장을 입력하세요.');
console.log(data.replace(/q/g, "e"));