구분 기호를 기준으로 문자열 분할하기
JavaScript에서 문자열을 특정 구분 기호를 기준으로 분할하려면 split() 메서드와 filter() 메서드를 함께 사용하면 됩니다. 기본 문법은 다음과 같습니다.
var anyVariableName = yourVariableName.split('parameter').filter(value => value)여기서 filter(value => value)는 분할 과정에서 발생하는 빈 문자열을 제거하는 역할을 합니다. 예를 들어 문자열이 구분 기호로 시작하는 경우, split() 결과의 첫 번째 요소가 빈 문자열이 되는데, filter()를 함께 사용하면 이런 불필요한 빈 값이 자동으로 걸러집니다.
예제
다음과 같이 하이픈(-)으로 구분된 문자열이 있다고 가정해 보겠습니다.
var sentence = "-My-Name-is-John-Smith-I-live-in-US";
이제 아래 코드처럼 split() 메서드를 사용해 문자열을 분할합니다.
var sentence = "-My-Name-is-John-Smith-I-live-in-US";
console.log("원본 값 = " + sentence);
var result = sentence.split('-').filter(value => value);
console.log("split() 실행 후 = ");
console.log(result);
프로그램 실행 방법
위 프로그램을 실행하려면 Node.js 환경에서 다음 명령어를 입력합니다.
node fileName.js
여기서는 파일 이름이 demo63.js라고 가정합니다.
실행 결과
위 코드를 실행하면 다음과 같은 출력 결과를 얻을 수 있습니다.
PS C:\Users\Amit\JavaScript-code> node demo63.js
원본 값 = -My-Name-is-John-Smith-I-live-in-US
split() 실행 후 =
[
'My', 'Name',
'is', 'John',
'Smith', 'I',
'live', 'in',
'US'
]
출력 결과에서 볼 수 있듯이, 하이픈(-)으로 연결되어 있던 문자열이 개별 단어 배열로 깔끔하게 분할되었으며, 문자열 맨 앞의 구분 기호 때문에 생길 수 있는 빈 문자열도 filter() 덕분에 포함되지 않았습니다.