JavaScript에서 문자열을 바꾸는 방법
Daniel Hayes
Full-Stack Engineer · Leapcell

Key Takeaways
- JavaScript에서 문자열의 일부를 수정하려면
replace()
를 사용하십시오. - 정규 표현식을 사용하면 전역적이고 대소문자를 구분하지 않는 대체가 가능합니다.
- 함수를 대체로 사용하여 동적 값을 생성할 수 있습니다.
문자열 조작은 JavaScript에서 흔한 작업이며, 가장 자주 사용되는 작업 중 하나는 문자열의 일부를 바꾸는 것입니다. 사용자 입력을 수정하거나, 데이터를 처리하거나, 텍스트 서식을 지정할 때 JavaScript는 문자열 대체를 효율적이고 유연하게 수행할 수 있는 여러 방법을 제공합니다.
String.prototype.replace()
사용
JavaScript에서 문자열의 일부를 바꾸는 기본 방법은 replace()
메서드입니다.
구문
str.replace(searchValue, replaceValue);
searchValue
는 문자열 또는 정규 표현식일 수 있습니다.replaceValue
는 문자열이거나 대체를 생성하는 함수일 수 있습니다.
예제 1: 간단한 하위 문자열 바꾸기
const message = "Hello, world!"; const updated = message.replace("world", "JavaScript"); console.log(updated); // "Hello, JavaScript!"
이것은 "world"
의 첫 번째 항목을 "JavaScript"
로 바꿉니다.
예제 2: 정규 표현식 사용
const sentence = "The rain in Spain stays mainly in the plain."; const result = sentence.replace(/ain/g, "☀️"); console.log(result); // "The r☀️ in Sp☀️ stays m☀️ly in the pl☀️."
g
(전역) 플래그를 추가하면 첫 번째 일치 항목뿐만 아니라 모든 일치 항목이 대체됩니다.
대소문자를 구분하지 않는 대체
정규 표현식에서 i
플래그를 사용하여 대소문자를 구분하지 않도록 일치를 만들 수 있습니다.
const text = "Hello HELLO hello"; const result = text.replace(/hello/gi, "hi"); console.log(result); // "hi hi hi"
대체 함수 사용
대체를 동적으로 계산하려면 함수를 두 번째 인수로 전달할 수 있습니다.
const prices = "Product A: $5, Product B: $10"; const updated = prices.replace(/\$(\d+)/g, (match, p1) => { const doubled = parseInt(p1) * 2; return `$${doubled}`; }); console.log(updated); // "Product A: $10, Product B: $20"
일반적인 함정: Replace는 첫 번째 일치 항목만 대체합니다.
기본적으로 replace()
는 g
플래그가 있는 정규 표현식을 사용하지 않는 한 첫 번째 항목만 바꿉니다.
const str = "apple apple apple"; console.log(str.replace("apple", "orange")); // "orange apple apple"
모두 바꾸려면 다음을 사용하십시오.
console.log(str.replace(/apple/g, "orange")); // "orange orange orange"
요약
- JavaScript에서 문자열을 수정하려면
replace()
를 사용하십시오. - 전역 또는 복잡한 대체에는 정규 표현식을 사용하십시오.
- 모든 항목을 바꾸려면
g
플래그를 사용하십시오. - 대체 값을 동적으로 계산하기 위해 함수를
replace()
에 전달할 수 있습니다.
이러한 기술을 이해하면 모든 JavaScript 응용 프로그램에서 문자열을 효과적으로 조작하는 데 도움이 됩니다.
FAQs
기본적으로 replace()
는 g
플래그가 있는 정규 표현식을 사용하지 않는 한 첫 번째 일치 항목만 대상으로 합니다.
예, 대소문자를 구분하지 않는 일치에는 i
플래그가 있는 정규 표현식을 사용하십시오.
함수를 replace()
에 두 번째 인수로 전달하십시오. 각 일치 항목에 대해 호출됩니다.
Leapcell은 Node.js 프로젝트 호스팅을 위한 최고의 선택입니다.
Leapcell은 웹 호스팅, 비동기 작업 및 Redis를 위한 차세대 서버리스 플랫폼입니다.
다국어 지원
- Node.js, Python, Go 또는 Rust로 개발하십시오.
무료로 무제한 프로젝트 배포
- 사용량에 대해서만 비용을 지불하십시오. 요청 없음, 요금 없음.
탁월한 비용 효율성
- 유휴 요금 없이 사용한 만큼 지불하십시오.
- 예: $25는 평균 응답 시간 60ms에서 694만 건의 요청을 지원합니다.
간소화된 개발자 경험
- 간편한 설정을 위한 직관적인 UI.
- 완전 자동화된 CI/CD 파이프라인 및 GitOps 통합.
- 실행 가능한 통찰력을 위한 실시간 메트릭 및 로깅.
간편한 확장성과 고성능
- 쉬운 고 동시성을 처리하기 위한 자동 확장.
- 제로 운영 오버헤드 — 구축에만 집중하십시오.
설명서에서 자세히 알아보십시오!
X에서 팔로우하세요: @LeapcellHQ