본문 바로가기

Programmers

[JavaScript] 문자열에서 특정 문자 개수 구하는 방법

코딩테스트를 풀다보면 특정 문자 개수 구하기, 같은 문자열 찾기 같은 문제가 나와서 정리해본다.

js에서는 특정 문자를 구하는 직접적인 함수는 없고, split 함수와 match함수를 활용하여 쓸 수 있다.

 

1. split 함수 사용

let str = 'Hello, JavaScript';
let count = str.split(',').length - 1;
// count=1 출력

split 함수를 사용하면 특정 문자를 기준으로 문자열을 배열로 변환한다.

배열의 길이에서 1을 뺀게 특정문자 개수이다.

 

2. match 함수 사용

let str = 'Hello, JavaScript';
let count = str.match(/,/ig).filter(item => item !== '').length;

match함수를 활용한 뒤 filter함수를 사용한 방법이다. filter함수를 사용하지 않을 경우 특정 문자를 찾기 못하면 빈배열 1개를 반환하기 때문에 1을 반환한다.