처음으로 JavaScript의 교체() 메서드는 str.replace("-","!")를 직접 사용하는 경우에만 첫 번째 일치 문자를 교체한다는 사실을 발견했습니다.
그리고 str.replace( /-/g ,"!")는 일치하는 모든 문자를 대체할 수 있습니다(g는 전역 플래그입니다).
replace()
replace() 메서드는 첫 번째 인수
(정규 표현식)와 일치하는 텍스트를 두 번째 인수(문자열)의 텍스트로 바꿀 때 생성되는 문자열을 반환합니다. 정규식 선언에 g(전역) 플래그가 설정되지 않은 경우 이 메서드는 패턴의 첫 번째
발생만 바꿉니다(예:
).
var s = "안녕하세요. Regexps는 재미있습니다.";s = s.replace(/./, "!") // 첫 번째 마침표를 느낌표로 바꿉니다alert(s);
'Hello! Regexps are fun'이라는 문자열을 생성합니다. g 플래그를 포함하면 통역사가일치하는 모든 하위 문자열을 찾아 바꾸는 작업을 수행하게 됩니다.
다음 결과가 나옵니다. "Hello! Regexps는 재미있습니다!"
따라서 다음 방법을 사용할 수 있습니다:string.replace(/reallyDo/g, replacementWith);
string.replace(new RegExp(reallyDo , 'g'), 대체);
string:
reallyDo: 검색 중인 하위 문자열입니다.
replaceWith: 대체에 사용되는 하위 문자열입니다.