我正在尝试创建一个脚本,以减少例如“你好。我今天过得很愉快!”改为“ helloihadagreatdaytoday”。到目前为止,我仅设法将文本转换为小写:^)
我有一串禁止的字符。
var deletthis = ". !";
var a = deletthis.split("");
如您所见,它禁止点,空格和感叹号,并将该字符串转换为数组。然后,我给用户一个提示,并通过for循环运行返回字符串(q),应该删除被禁止的字符。
for (i=0; i<a.length; i++) {
q = q.replace(a[i], "");
}
但是,这仅禁止在字符串中使用该字符的一个实例。因此,如果我输入“那很好...很好!!!”,它将返回为“那很好..很好!!”。
感谢您的帮助:)!
答案 0 :(得分:0)
您可以为此使用正则表达式。
deletthis.replace(/ /g,'')
此代码的作用是在字符串中找到空格并将其删除,
此外,一个快速的Google如何删除字符串中的空格会有所帮助
答案 1 :(得分:0)
使用正则表达式
a = a.replace(/[\.!]/g, "");
如果您事先不知道字符,可以以防万一:
a = a.replace(new RegExp("[" + deletethis.split(" ").map(c => "\\" + c).join("") + "]", "g"), "");
答案 2 :(得分:0)
使用正则表达式删除所有不是字母的内容,然后使用LowerCase()
进行大小写转换,然后拆分并合并以删除任何空格
let str = "Hello. I had a great day today!"
let k = str.replace(/[^a-zA-Z ]/g, "").toLowerCase().split(" ").join("");
console.log(k)
答案 3 :(得分:0)
在这种情况下,使用正则表达式可能会更短,因为它是相同的输出,因此我们可以在正则表达式中使用|
表示或:
var str = "Hello. I had a great day today!";
str = str.replace(/\.| |!/g, "").toLocaleLowerCase();
console.log(str)