[ic].replace()[/ic] 메소드는 특정 문자열을 다른 문자열로 대체 하고 싶을 때 사용한다.
크게 2가지 방식으로 사용된다.
1) 특정 문자열 지정 방법
let str = "Hello World!";
// Replace "World" with "JavaScript"
let newStr = str.replace("World", "JavaScript");
console.log(newStr); // Output: "Hello JavaScript!"
str.replace(A,B) | |
A | 변경하고 싶은 문자 |
B | 변경될 문자 |
2) 정규표현식(regular expression) 사용
let str = "Hello World!";
// Replace the first occurrence of the letter "o" with the letter "x"
let newStr = str.replace(/o/, "x");
console.log(newStr); // Output: "Hellx World!"
정규표현식을 사용한다는 의미로 [ic]/[/ic](슬래시)를 열고 닫는다.
그 안에 정규표현식 규칙을 작성한다.
위 예제는 [ic]o[/ic]를 찾아 [ic]x[/ic]로 바꾸라는 예제다.
그런데 [ic]output[/ic]을 보면
hello => hellox (o가 x로 변환 완료)
World => World (o가 x로 변환 안됨)
조건에 부합하는 녀석을 발견하면 동작을 멈춘다. 뒤에 조건에 부합하는 녀석이 있더라도 확인을 안한다는거다.
그렇다면 이문제를 어떻게 해결할 수 있을까?
그때 사용하는 것이 [ic]g[/ic] 플래그이다. global의 약자다.
let str = "Hello World!";
// Replace all occurrences of the letter "o" with the letter "x"
let newStr = str.replace(/o/g, "x");
console.log(newStr); // Output: "Hellx Wxrld!"
[ic]g[/ic]를 [ic]/[/ic](슬래시) 뒤에 붙혀 주는 형태로 동작시킨다.
'자바스크립트' 카테고리의 다른 글
[자바스크립트 기초] filter vs find 둘은 어떤 차이가 있을까? (0) | 2022.01.10 |
---|---|
[자바스크립트 기초] " || && 는 어떤 기능을 할까 ?" (short Circuiting) (0) | 2021.12.27 |
[자바스크립트 기초] == vs === 차이 (0) | 2021.08.08 |
[자바스크립트 기초] Implicit Type Coercion (0) | 2021.08.07 |
[자바스크립트 기초] if | else 조건문 (0) | 2021.06.05 |
댓글