在本教程中,我們將借助示例了解 JavaScript 字符串 replace() 方法。
replace()
方法返回替換指定字符串/正則表達式的新字符串。
示例
const message = "ball bat";
// replace the first b with c
let result = message.replace('b', 'c');
console.log(result);
// Output: call bat
replace() 語法
用法:
str.replace(pattern, replacement)
在這裏,str
是一個字符串。
replace()參數
replace()
方法包含:
pattern
- 要替換的字符串或正則表達式replacement
-pattern
替換為此replacement
(可以是字符串或函數)
relace() 返回值
replace()
方法返回一個替換了指定模式的新字符串。
示例 1:替換第一個匹配項
const text = "Java is awesome. Java is fun."
// passing a string as the first parameter
let pattern = "Java";
let new_text = text.replace(pattern, "JavaScript");
console.log(new_text);
// passing a regex as the first parameter
pattern = /Java/;
new_text = text.replace(pattern, "JavaScript");
console.log(new_text);
輸出
JavaScript is awesome. Java is fun. JavaScript is awesome. Java is fun.
在這兩種 replace()
方法中,第一次出現的 Java
被替換為 JavaScript
。
示例 2:替換所有匹配項
替換所有出現的pattern
,你需要使用一個正則表達式g
開關(全局搜索)。例如,/Java/g
代替/Java/
.
const text = "Java is awesome. Java is fun."
// notice the g switch in the regex pattern
const pattern = /Java/g;
const new_text = text.replace(pattern, "JavaScript");
console.log(new_text);
輸出
JavaScript is awesome. JavaScript is fun.
在這裏,replace()
方法將兩次出現的 Java
替換為 JavaScript
。
替換不考慮大寫/小寫
replace()
方法區分大小寫。要執行不區分大小寫的替換,您需要使用帶有i
開關的正則表達式(不區分大小寫的搜索)。
示例 3:不區分大小寫的替換
const text = "javaSCRIPT JavaScript"
// the first occurrence of javascript is replaced
let pattern = /javascript/i; // case-insensitive search
let new_text = text.replace(pattern, "JS");
console.log(new_text) // JS JavaScript
// all occurrences of javascript is replaced
pattern = /javascript/gi; // case-insensitive and global search
new_text = text.replace(pattern, "JS");
console.log(new_text) // JS JS
輸出
JS JavaScript JS JS
示例 4:傳遞函數作為替換
您還可以將函數(而不是字符串)作為第二個參數傳遞給 replace()
方法。
const text = "Random digit: 3"
// generate a random digit between 0 and 9
function generateRandomDigit() {
return Math.floor(Math.random() * 10)
}
// regex to match a digit
const pattern = /\d/;
const new_text = text.replace(pattern, generateRandomDigit);
console.log(new_text)
輸出
Random digit: 8
運行此程序時,您可能會得到不同的輸出。這是因為第一個數字text
被替換為之間的隨機數字0和9.
相關用法
- JavaScript String replaceAll()用法及代碼示例
- JavaScript String repeat()用法及代碼示例
- JavaScript String slice()用法及代碼示例
- JavaScript String length用法及代碼示例
- JavaScript String padStart()用法及代碼示例
- JavaScript String fromCodePoint()用法及代碼示例
- JavaScript String link()用法及代碼示例
- JavaScript String blink()用法及代碼示例
- JavaScript String charCodeAt()用法及代碼示例
- JavaScript String endsWith()用法及代碼示例
- JavaScript String substr()用法及代碼示例
- JavaScript String charAt()用法及代碼示例
- JavaScript String normalize()用法及代碼示例
- JavaScript String search()用法及代碼示例
- JavaScript String trim()用法及代碼示例
- JavaScript String strike()用法及代碼示例
- JavaScript String matchAll()用法及代碼示例
- JavaScript String fontsize()用法及代碼示例
- JavaScript String sub()用法及代碼示例
- JavaScript String fixed()用法及代碼示例
注:本文由純淨天空篩選整理自 JavaScript String replace()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。