Функция ReplaceAll в JavaScript - PullRequest
       11

Функция ReplaceAll в JavaScript

2 голосов
/ 02 декабря 2009

Я получаю строку "test+test1+asd.txt" и хочу преобразовать ее в "test test1 asd.txt"

Я пытаюсь использовать функцию str = str.replace("/+/g"," ");

но это не работает

С уважением, Hemant

Ответы [ 3 ]

9 голосов
/ 02 декабря 2009
str = str.replace(/\+/g," ");
0 голосов
/ 29 июня 2019

Вот простая функция javascript, которая заменяет все:

function replaceAll (originalstring, exp1, exp2) {
//Replaces every occurrence of exp1 in originalstring with exp2 and returns the new string.

    if (exp1 == "") {
        return;  //Or else there will be an infinite loop because of i = i - 1 (see later).
        }

    var len1 = exp1.length;
    var len2 = exp2.length;
    var res = "";  //This will become the new string

    for (i = 0; i < originalstring.length; i++) {
        if (originalstring.substr(i, len1) == exp1) {  //exp1 found
            res = res + exp2;  //Append to res exp2 instead of exp1
            i = i + (len1 - 1);  //Skip the characters in originalstring that have been just replaced
        }
        else {//exp1 not found at this location; copy the original character into the new string
            res = res + originalstring.charAt(i);
        }
    }
    return res;
}
0 голосов
/ 02 декабря 2009

+ 1 для S.Mark ответ , если вы собираетесь использовать регулярное выражение, но для замены одного символа вы можете легко использовать:

yourString = yourString.split("+").join(" ");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...