본문 바로가기
알고리즘 스터디/자바스크립트 문법정리

replace() 함수, 정규표현식, repeat() - 자바스크립트 문자열 바꾸기, 정규표현식 , 문자열 반복 - 자바스크립트[JavaScript]

by 레일라오리덕 2021. 7. 20.
728x90

replace함수는 코딩테스트를 풀면서 종종 썼던 함수이다.

아래는 내가 replace를 활용했던 문제들 중 일부이다.

 

https://leylaoriduck.tistory.com/453

 

[프로그래머스 스킬체크 레벨 1] [1차] 비밀지도 풀이 및 설명 - 자바스크립트[JavaScript]

https://programmers.co.kr/learn/courses/30/lessons/17681 코딩테스트 연습 - [1차] 비밀지도 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는..

leylaoriduck.tistory.com

https://leylaoriduck.tistory.com/451?category=781765 

 

[프로그래머스 스킬체크 레벨 1] 숫자 문자열과 영단어 풀이 및 설명 - 자바스크립트[JavaScript]

https://programmers.co.kr/learn/courses/30/lessons/81301 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바

leylaoriduck.tistory.com

728x90

 

replace함수(/바꿀문자열/, 치환할 문자열)

var str = 'one2three';
str.replace(/one/gi,'1'); //str에 one이라는 문자열이 있을경우, 대소문자를 구별해서 1로 치환

 

바꿀 문자열은 // 사이에 넣어주고, 뒤에 오는 g는 전역검색을 하겠다는  뜻이고, i는 대소문자를 구별하겠다는 뜻이다.

 

g 전역 검색
i 대소문자 구분 없는 검색
m 다중행(multi-line) 검색
s .에 개행 문자도 매칭(ES2018)
u 유니코드; 패턴을 유니코드 코드 포인트의 나열로 취급합니다.
y "sticky" 검색을 수행. 문자열의 현재 위치부터 검색을 수행합니다. sticky (en-US) 문서를 확인하세요.

 

var str = '12345';
str.replace(/[1-2]/g,"@"); //1부터 2까지의 문자열을 '@'로 바꿔줌

 

만약 바꾸려는 문자열이 숫자이고, 치환할 문자열이 같다면, 위와 같이 범위를 []사이에 정해주고, 공통으로 치환할 문자열을 입력해주면 된다.

 

repeat함수('문자열'.repeat(반복횟수))

'xyz'.repeat(0); // ''
'xyz.repeat(2); // 'xyzxyz'

숫자가 아닌 문자열을 반복해서 표현하고 싶을 때 굉장히 유용한 함수이다.

728x90

댓글