[JS] 중첩된 문자열 제거하는 방법

한 텍스트 구문에서 중첩되는 문자열을 제거하는 함수입니다.

예를 들어 “사과;;;바나나;;파인애플;배;;;포도;” 라는 문자열이 있을때 중복된 세미콜론을 제거하고 하나의 세미콜론만 가지게 하고 싶습니다. 즉, “사과;바나나;파인애플;배;포도;” 로 변환하고자 합니다.

이 때 흔히 아래와 같이 replace를 이용해 치환합니다.

하지만 결과는 “사과;;바나나;파인애플;배;;포도;” 가 될 것입니다. replace가 한 번 더 실행되어야 원하는 결과를 얻을 수 있습니다. 중첩문자(세미콜론)이 3개 있을땐 2번, 4개 있을땐 3번 replace가 실행되어야 하는데 이 말의 의미는 반목문(loop)를 실행해야 한다는 것입니다.

중첩문자를 제거하기 위한 함수를 아래와 같이 만들어 봤습니다.

 

이 함수의 사용 예는 다음과 같습니다.

* 참고로 함수 내용안에 jQuery 셀렉터가 사용되고 있기 때문에 jQuery 라이브러리가 필요합니다.

찐빵

이 곳에 작성된 모든 컨텐츠는 CCL 규약의 CC BY-NC-SA (저작자표시-비영리-동일조건변경허락) 조건을 따릅니다. 비상업적 용도로 출처를 밝혀주시면 얼마든지 공유 가능합니다.

You may also like...

%d 블로거가 이것을 좋아합니다: