我必须从HTML文本值中删除逗号,句点和连字符。我不想编写所有这3个while循环,而是只希望一个循环(任何一个)来完成所有这一切。
我已经尝试了多个&&,如果嵌套在里面,但是我总是只会删除逗号。
while(beg.indexOf(',') > -1)
{
beg = beg.replace(',','');
document.twocities.begins.value= beg;
}
while(beg.indexOf('-') > -1)
{
beg = beg.replace('-','');
document.twocities.begins.value= beg;
}
while(beg.indexOf('.') > -1)
{
beg= beg.replace('.','');
document.twocities.begins.value= beg;
}
答案 0 :(得分:0)
您可以使用正则表达式来完成所有这些操作而无需循环。 这是使用单个正则表达式删除所有这些字符的示例:
let str = "abc,d-e.fg,hij,1-2,34.56.7890"
str = str.replace(/[,.-]/g, "")
console.log(str)
答案 1 :(得分:0)
使用正则表达式,如下所示。
let example = "This- is a,,., string.,";
console.log(example.replace(/[-.,]+/g, ""));
答案 2 :(得分:0)
一次调用replace函数并使用正则表达式就足够了:
document.twocities.begins.value = beg = beg.replace(/[,.-]/g, "");
正则表达式是一种模式匹配语言。此处使用的模式基本上表示“每次出现字符.
,,
,-
)之一。请注意,斜杠/
界定了模式,而后缀则由控制匹配过程的标志组成-在这种情况下,它是g
(全局),告诉引擎替换每次出现的情况(与仅出现在第一个情况相反)不带标志)。
This site提供了许多有关正则表达式,它们在编程中的用法以及在不同编程环境中的实现的信息。
有几个在线站点可以测试实际的正则表达式及其匹配项(包括说明),例如。 Regex 101。
更多细节...;):您可以将.replace
函数与字符串一起用作第一个参数(就像在代码示例中所做的那样)。但是,只有搜索到的字符串的第一次出现会被替换-因此您将不得不求助于循环。 here可以找到.replace
函数的规格(通常是JS)。
答案 3 :(得分:0)
首先,不需要循环。
您可以使用String.replace()
替换字符串中的字符,并可以使用regular expressions确定要替换的字符和模式。
let sampleString = "This, is. a - test - - of, the, code. ";
console.log(sampleString.replace(/[,-.]/g, ""));