• 회원가입
  • 로그인
  • 구글아이디로 로그인

[String] JS - replaceAll() 메서드 - 문자열 모두 대체/변경/변환/치환/바꾸기 (= replaceAll메서드 = 리플레이스올메서드)

목차

  1. replaceAll() 예제 - 지정 단어를 일괄 변경
  2. replaceAll() 정의
  3. replaceAll() 구문
  4. replaceAll() 예제 - 지정 문자를 일괄 변경
  5. replaceAll() 예제 - 정규표현식 패턴 일치 시, 일괄 변경
  6. replaceAll() 예제 - 자동 링크 함수
  7. replaceAll() 예제 - cf. 사용자정의 함수

 

replaceAll() 예제 - 지정 단어를 일괄 변경

 

<script>

const hz = '홈짱닷컴 (Homzzang.com) 관리자: 홈짱 (HOMZZANG)';

 

// 지정 문자와 일치 시 모두 변경

console.log(hz.replaceAll('홈짱', 'Homzzang'));

// 결과값: Homzzang닷컴 (Homzzang.com) 관리자: Homzzang (HOMZZANG)

 

// 지정 패턴과 일치 시 모두 변경

const regex = /Homzzang/ig;

console.log(hz.replaceAll(regex, 'homzzang'));

// 결과값: 홈짱닷컴 (homzzang.com) 관리자: 홈짱 (homzzang)

</script>

 

 

replaceAll() 정의

 

지정 (문자/단어/패턴)과 일치하는 모든 것을 새 문자열로 대체.

 


 

1.cf.

replace() 메서드 - 문자열 대체 (※ 일치하는 맨 처음 1개만)

 

2.

IE 제외한 주요 브라우저 모두 지원.

 

3.

패턴 관련 매뉴얼은 아래 MDN 매뉴얼 참고.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replaceAll

 

 

replaceAll() 구문

※ 4가지 형태 가능

 

  • replaceAll(regexp, newSubstr)
  • replaceAll(regexp, replacerFunction)
  • replaceAll(substr, newSubstr)
  • replaceAll(substr, replacerFunction)

 


[매개변수]

 

regexp

정규표현식. 

  • 주의1 - 전역("g") 플래그 설정 필요. 미설정 시 에러 발생.
  • 주의2 - 정규표현식을 따옴표로 감싸면 안 됨.

 

substr

일치하는 기존 문자열

 

newSubstr

대체할 새 서브문자열

 

replacerFunction

대체함수



[반환값]

 

일치하는 것들이 새 문자열로 바뀐 문자열 반환.

 

 

replaceAll() 예제 - 지정 문자를 일괄 변경

[예제1] - 소문자를 대문자로 변경

 

<script>

const hz = 'Homzzang'.replaceAll('z', 'Z');

console.log(hz); // 결과값: HomZZang

</script>

 


[예제2] - <br> 태그 제거

 

<div id="hz">홈짱닷컴<br>Homzzang.com<br>홈페이지 제작관리 강의</div>


<script>

hz.innerHTML = hz.innerHTML.replaceAll("<br>", " / "); 

</script>

 

결과보기 

 

replaceAll() 예제 - 정규표현식 패턴 일치 시, 일괄 변경

 

<script>

const hz = 'Homzzang'.replaceAll(/z/g, 'Z');

console.log(hz); // 결과값: HomZZang

</script>

 

PS1. 

정규표현식을 따옴표로 감싼 경우 결과값: Homzzang (※ 대체 발생 X)

 

PS2.

정규표현식에 전역 플래그 "g" 안 붙인 경우 에러 메시지 내용.
TypeError: replaceAll must be called with a global RegExp

 

 

replaceAll() 예제 - 자동 링크 함수

 

<div id="hz">홈짱닷컴 https://homzzang.com</div>


<script>

function autoLink() {

    noLink = this[arguments[0]].innerHTML.replaceAll('src="htt', 'src="htt*');

    this[arguments[0]].innerHTML = noLink.replace(new RegExp("(http|https)://([-/.a-zA-Z0-9_~#%$?&=:200-377()]+)", "gi"), "<a href='$1://$2' target='_blank'>$1://$2</a>").replaceAll('src="htt*', 'src="htt');

}

autoLink("hz");

</script>

 

비타주리 님 (220616) https://sir.kr/qa/464127

 

replaceAll() 예제 - cf. 사용자정의 함수

※ 문자열 대체만 되는 함수를 직접 제작해 사용 가능.

 

<script>

function replaceAll(str, searchStr, replaceStr) {

   return str.split(searchStr).join(replaceStr);

}


const hz = replaceAll("홈짱닷컴 Homzzang.com", "z", "Z");

console.log(hz); // 홈짱닷컴 HomZZang.com

</script>

 



분류 제목
HTML_Objects JS - <option> 객체 ★ - 선택사항 (= 옵션사항 = option태그 = 옵션태그)
HTML_Objects JS - <output> 객체 - 계산결과값출력 (= 산출태그 = output태그 = 아웃풋태그) (HTML…
HTML_Objects JS - <p> 객체 - 글단락 (= p태그 = p요소 = 글문단 = 단락태그 = 문단태그 = 피태그)
HTML_Objects JS - <param> 객체 - 미디어매개변수 (= param태그 = 패럼태그 = 파람태그 = 패러미터태그 …
HTML_Objects JS - <pre> 객체 ★ - 공백줄바꿈보존 (= 보존태그 = 있는그대로태그 = 있는대로태그 = pre태그…
HTML_Objects JS - <progress> 객체 - 진행상태바 (=진행바 = 진행막대 = 작업막대 = progress태그 …
HTML_Objects JS - <q> 객체 - 짧은인용구 (= 짧은인용태그 = q태그 = 큐태그)
HTML_Objects JS - <s> 객체 - 취소선 (= 취소태그 = s태그 = 에스태그 = 스트라이크쓰루태그) (HTML5 재…
HTML_Objects JS - <samp> 객체 - 프로그램산출예제 (= 예제태그 = samp태그 = 샘프태그 = 샘플태그)
HTML_Objects JS - <script> 객체 ★ - JS코드입력 (= 동적기능언어입력 = script태그 = 스크립트태그)
HTML_Objects JS - <section> 객체 ★ - 문서단락 (= section태그 = 섹션태그, IE9)
HTML_Objects JS - <select> 객체 ★★ - 선택메뉴 (= select메뉴 = select태그 = 실렉트태그/셀렉…
HTML_Objects JS - <small> 객체 - 작은글씨 (= small태그 = 스몰태그)
HTML_Objects JS - <source> 객체 - 미디어소스 불러오기 (= source태그 = 소스태그, IE9)
HTML_Objects JS - <span> 객체 ★★★ - 인라인요소그룹 (= span태그 = 스팬태그)</span>
HTML_Objects JS - <strong> 객체 ★ - 굵은 글씨 (=폰트 굵게 = 글씨 굵게 = strong태그 = 스트롱태…
HTML_Objects JS - <style> 객체 ★ - 요소에 CSS스타일적용 (= style태그 = 스타일태그)
HTML_Objects JS - <sub> 객체 ★ - 아래첨자 (= 하단작은글씨 = 하단태그 = sub태그 = 서브태그)
HTML_Objects JS - <summary> 객체 - 세부사항의 머리글 (= summary태그 = 서머리태그 = 써머리태그)…
HTML_Objects JS - <sup> 객체 ★ - 위첨자 (= 상단작은글씨 = 상단태그 = sup태그 = 섭태그 = 서프태그 …
59/67
목록
찾아주셔서 감사합니다. Since 2012