자바스크립트에서 replace를 replaceAll 처럼 사용하기

자바스크립트에서 replaceAll 은 없다.
정규식을 이용하여 대상 스트링에서 모든 부분을 수정해 줄 수 있다.

[replace 이용]

// #를 공백으로 변경한다.
str.replace("#","");

하지만 첫번째 # 만 공백으로 변경되고 나머지는 변경이 되지 않는다.

 

[정규식 이용해서 gi 로 감싸기]

// 정규식을 사용하여 gi 옵션을 붙이면 replaceAll 과 같은 결과를 볼 수 있다.
str.replace(/#/gi, "");

 

[정규식의 gi 설명]
* g : 발생할 모든 pattern에 대한 전역 검색
* i : 대/소문자 구분 안함
* m: 여러 줄 검색 (참고)

 

[출처]
http://blog.naver.com/PostView.nhn?blogId=sjpotato&logNo=40150731304&redirect=Dlog&widgetTypeCall=true

“자바스크립트에서 replace를 replaceAll 처럼 사용하기”에 대한 8개의 생각

  1. 감사합니다.. 10시간동안 이거 찾아 헤맸는데 드디어 발견했네요 정말 감사드립니다.^^

  2. / 이 특수문자를 찾아서 빈공란으로 바꾸려고하는데 ㅜ ㅜ 정규식표현으로도 안되던데 다른 방식이 있는건가요 ㅠ?

      1. 저는 주석처리가 되는 바람에 /[/]/g 방식을 사용해서 처리했습니다ㅠㅠ
        이번에 replace 개념은 확실히 박고갑니다. 답변감사합니다 :>

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다