문자열의 앞 뒤로 공백이 여러개라면 trim() 을 쓰면 앞 뒤로 공백이 1개던 5개던 모두 사라진다
하지만
str = ' 사자 곰 호랑이 코알라 뱀 돼지 '
라는 문자열을 공백을 제거하여 나누어서 배열에 담으려 할때 단순히 앞 뒤로 공백을 제거하자 하고 다음처럼
arr = str.trim().split(' '); // arr = [사자,곰,,호랑이,,,코알라,,,,,뱀,,,,,,,,,,,,,,,,,,돼지] error야 꺄악!
나누면 에러가 생긴다. 각 요소들 사이의 공백도 구분자로 인식하게 되어 공백을 요소로 인식해서 생기는 문제이다
이럴땐 요소간의 공백이 여러개여도 무시할 수 있도록 정규표현식을 사용하면 된다
아직 정규표현식을 배우진 않았지만 자주 쓰일것 같으니 일단 외워서 쓰며 익숙해지자
사용법은 아래와 같다
arr = str.trim().split(/\s+/); // arr = 사자,곰,호랑이,코알라,뱀,돼지
이러면 요소 사이의 공백이 여러개여도 문제없이 입력 가능하다!
'JavaScript > 기초 및 알고리즘 함수' 카테고리의 다른 글
자바스크립트 에서 set 으로 중복 제거가 안될때 (0) | 2022.08.30 |
---|---|
[JS] 큰 수의 사용 시 BigInt 로 형변환 (0) | 2022.08.14 |
filter 함수 사용법 (0) | 2022.08.12 |
빈 문자열을 split 하면 빈 문자열이 담긴 배열을 리턴한다 (0) | 2022.08.12 |
[JS] for in , for of 차이 (0) | 2022.08.10 |
댓글