Как удалить запрещенные символы из строки более одного раза в JS? - PullRequest
0 голосов
/ 30 августа 2018

Я пытаюсь создать сценарий, который уменьшит, например: «Здравствуйте. У меня сегодня был отличный день!» "Привет, сегодня, сегодня". Пока мне удалось преобразовать только текст в нижний регистр: ^)

У меня есть строка запрещенных символов.

var deletthis = ". !";
var a = deletthis.split("");

Как видите, он запрещает точку, пробел и восклицательный знак и превращает эту строку в массив. Затем я даю пользователю приглашение и запускаю строку возврата (q) через цикл for, который должен удалить запрещенные символы.

for (i=0; i<a.length; i++) {
    q = q.replace(a[i], "");
}

Однако это запрещает только один экземпляр этого символа в строке. Так что, если я наберу «Это хорошо ... Очень приятно !!!», оно вернется как «Это хорошо .. Очень приятно !!».

Любая помощь приветствуется:)!

Ответы [ 4 ]

0 голосов
/ 30 августа 2018

Использование регулярного выражения в этом случае может быть короче, потому что это тот же вывод, поэтому мы можем использовать |, что означает или в регулярном выражении:

var str = "Hello. I had a great day today!";

str = str.replace(/\.| |!/g, "").toLocaleLowerCase();

console.log(str)
0 голосов
/ 30 августа 2018

Используйте регулярное выражение

a = a.replace(/[\.!]/g, "");

Если вы не знаете символы заранее, вы можете избежать их на всякий случай:

a = a.replace(new RegExp("[" + deletethis.split(" ").map(c => "\\" + c).join("") + "]", "g"), "");
0 голосов
/ 30 августа 2018

Используйте регулярные выражения, чтобы удалить все, что не является алфавитом, затем LowerCase() для преобразования регистра, а затем разделите и объедините, чтобы удалить все пробелы

let str = "Hello. I had a great day today!"
let k = str.replace(/[^a-zA-Z ]/g, "").toLowerCase().split(" ").join("");
console.log(k)
0 голосов
/ 30 августа 2018

Вы можете использовать регулярное выражение для этого.

deletthis.replace(/ /g,'')

что делает этот код - находит пробелы в строке и удаляет их,

Кроме того, быстрый Google с тем, как удалить пробелы в строке, помог бы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...