[javascript] 자바스크립트 정규식을 활용한 숫자 포맷팅

자바스크립트에서 숫자를 특정한 형식으로 표현하기 위해 정규식을 활용하는 방법을 알아보겠습니다.

숫자 포맷팅 기본

숫자를 특정한 형식(예: 3자리마다 쉼표)으로 표현하려면 toLocaleString 메서드를 사용할 수 있습니다.

const number = 1000000;
const formattedNumber = number.toLocaleString(); // "1,000,000"

정규식을 사용한 숫자 포맷팅

하지만 toLocaleString은 모든 브라우저에서 지원되지 않을 수 있으며, 더 유연한 포맷팅이 필요한 경우가 있습니다. 이때 정규식을 사용하여 숫자를 포맷팅할 수 있습니다.

예를 들어, 숫자를 3자리마다 쉼표로 구분하여 표현하고 싶다면 아래와 같이 정규식을 사용할 수 있습니다.

const number = 1000000;
const formattedNumber = number.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ','); // "1,000,000"

위 코드에서 replace 메서드와 정규식을 사용하여 숫자를 포맷팅할 수 있습니다. \B(?=(\d{3})+(?!\d)) 부분은 3자리 숫자마다 ,를 추가하는 정규식 표현입니다.

마무리

자바스크립트를 사용하여 숫자를 특정 형식으로 포맷팅하는 방법에 대해 알아보았습니다. toLocaleString을 사용하거나 정규식을 적용하여 필요한 형식으로 숫자를 표현할 수 있습니다.

참고 문헌: MDN web docs - Number.prototype.toLocaleString()