如何在 JavaScript 中使用正則表示式檢測和替換字串中的所有陣列元素?
陣列是在 JavaScript 中按順序排列的值列表。“由索引指定的元素”指的是每個值:以下特徵描述了 JavaScript 陣列:陣列可以最初儲存多種型別的值。例如,您可以將數字、字串、布林值和 null 型別元素儲存在陣列中。
讓我們進入本文,瞭解如何在 JavaScript 中使用正則表示式檢測和替換字串中的所有陣列元素。
在 JavaScript 中使用正則表示式
正則表示式是一種字元模式。使用該模式對文字執行模式匹配“搜尋和替換”操作。RegExp 物件是 JavaScript 中具有屬性和方法的模式。
語法
以下是正則表示式的語法 -
/pattern/modifier(s);
為了更好地理解如何在字串中使用正則表示式檢測和替換所有陣列元素,讓我們看一下以下示例。
示例
在以下示例中,我們正在執行一個指令碼以替換所有陣列元素以及正則表示式。
<!DOCTYPE html>
<html>
<body>
<script>
let array = ['duke', 'rx100']
let t = "rx100 is more better than the duke."
let regexp = new RegExp(array.join('|'), 'gim')
t = t.replace(regexp, 'N/A')
document.write(t)
</script>
</body>
</html>
當指令碼執行時,它將生成一個輸出,其中包含一個句子,其中在句子中找到陣列元素的位置都被替換為“N/A”,這是由於指令碼執行時觸發的事件導致的。
示例
考慮以下示例,這裡我們使用正則表示式替換字串中的陣列元素。
<!DOCTYPE html>
<html>
<body>
<p id="tutorial"></p>
<script>
var string = "Welcome to the tp. the best e-way learning";
var replaceArr = ["welome", "tp", "best", "e-way"];
var replaceArrayValue = ["Welcome", "Tutorialspoint", "Best", "E-way"];
var result = string;
for (var i = replaceArr.length - 1; i >= 0; i--) {
result = result.replace(RegExp("\b" + replaceArr[i].replace(/[-\/\^$*+?.()|[\]{}]/g, '\$&') + "\b", "g"), replaceArrayValue[i]);
}
document.getElementById("tutorial").innerHTML = result;
</script>
</body>
</html>
執行上述指令碼後,輸出視窗將彈出,顯示由於執行指令碼時觸發的事件導致的,被指令碼中提到的元素替換的句子。
示例
讓我們執行以下程式碼來觀察如何在字串中使用正則表示式檢測和替換陣列元素。
<!DOCTYPE html>
<html>
<body>
<p id="tutorial"></p>
<script>
var values = ['John', 'Smith', 'UK', 'JavaScript']
var sentence = "My Name is John Smith. I live in UK. My Favourite Subject is JavaScript."
var regularExpression = new RegExp(values.join('|'), 'gim')
sentence = sentence.replace(regularExpression, 'Not Available');
document.getElementById("tutorial").innerHTML = sentence;
</script>
</body>
</html>
當指令碼執行時,事件被觸發,顯示一個句子,其中與正則表示式匹配的元素被替換為“不可用”。
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP