Строки JS имеют метод замены (). Но этот метод заменит только первую строку, которая соответствует. Как показано в следующем примере:
<html> <head> <title> новый документ </title> </head> <body> <script> var str = "wordwordword"; var strnew = str.replace ("word", "excel"); alert (strnew); </script> </body> </html>Если вы хотите заменить их все, JS не предоставляет такого метода, как щита. Используйте регулярность для достижения эффекта замены:
str.replace (/word/g, "Excel") g означает: выполнять глобальные матчи (найти все совпадения вместо того, чтобы останавливаться после поиска первого матча).
<Head> <title> новый документ </title> <script> function replaceall (str) {if (str! = Null) str = str.replace (/word/g, "excel") return str;} </script> </head> <body> <script> var str = "vorwwordword"; rypeall (str); alert (strnew); </script> </body> </html>Есть аналогичный способ написать выше:
Str.Replace (New Regexp («Word», «GM»), «Excel») G выполняет глобальный матч (найти все совпадения, а не останавливаться после того, как найден первый матч).
M Выполняет многослойное соответствие.
Кроме того, вы также можете добавить методы прототипа объектов Sterng:
String.prototype.replaceall = function (s1, s2) {return this.replace (new regexp (s1, "gm"), s2); }Таким образом, вы можете использовать замену так же, как использование метода замены
str.replaceall («слово», «Excel»); суммировать три способа
1. Str.replace (/OldString/G, Newstring)
2. Str.replace (New Regexp (OldString, "GM"), Newstring)
3. Добавить метод прототипа объекта String