Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript로 문자열의 모든 공백 제거하기: RegEx 활용법

JavaScript에서 문자열의 모든 공백을 제거하는 가장 간단한 방법은 정규식(RegEx)replace() 메서드를 함께 사용하는 것입니다.

RegEx로 문자열의 공백 제거하기

정규식 패턴 \s는 일반 공백뿐만 아니라 탭, 줄바꿈 등 모든 종류의 공백 문자를 의미합니다. 여기에 전역(g) 플래그를 붙이면 문자열 전체에서 모든 공백을 한 번에 찾아 제거할 수 있습니다.

const sentence = "This sentence has 6 white space characters."

console.log(sentence.replace(/\s/g, ""))
// "Thissentencehas6whitespacecharacters."

결과를 변수에 저장하여 변경 사항 유지하기

위 예제는 결과를 콘솔에 출력할 뿐, 원본 문자열은 그대로 유지됩니다. JavaScript의 문자열은 불변(immutable)이기 때문에 원본이 직접 수정되지 않습니다.

따라서 공백이 제거된 문자열을 계속 사용하려면 새 변수를 만들고 sentence.replace(/\s/g, "")의 결과값을 할당해야 합니다.

// 공백이 있는 문장
const sentence = "This sentence has 6 white space characters."

// 공백이 제거된 문장
const sentenceRemoveWhiteSpace = sentence.replace(/\s/g, "")

console.log(sentenceRemoveWhiteSpace)
// Thissentencehas6whitespacecharacters.

참고: replaceAll() 메서드

ES2021부터 지원되는 replaceAll() 메서드를 사용하면 정규식 없이도 특정 문자를 모두 치환할 수 있습니다. 다만 탭이나 줄바꿈까지 포함한 모든 종류의 공백을 확실하게 제거하려면 위 예제처럼 /\s/g 정규식을 사용하는 것이 가장 안정적인 방법입니다.