繁体   English   中英

如何从字符串中删除所有出现的任何给定字符?

[英]How to remove all occurrences of any given character from string?

我的代码:

    function removeFromString(mystring,char){

    let regex = new RegExp(char, 'g');
    let string;
    for(let i; i< mystring.length; i++){
        string = mystring.replace(regex, ''));

    }
    console.log(mystring);
}
removeFromString('Hello How are you','o');

这行不通。 知道我在做什么错吗?

方法String.replace()不会更改字符串,它会创建一个新字符串。 返回替换的结果。

另外,由于在正则表达式中使用了g标志,它将替换字符串中的所有匹配项,因此不需要for循环。

 function removeFromString(mystring, char) { const regex = new RegExp(char, 'g'); return mystring.replace(regex, ''); } console.log(removeFromString('Hello How are you', 'o')); 

您还可以通过循环来实现相同的目的,方法是从不是char的原始字符串中的所有字符重建字符串:

 function removeFromString(mystring, char) { let string = ''; for (let i = 0; i < mystring.length; i++) { if(mystring[i] !== char) string += mystring[i]; } return string; } console.log(removeFromString('Hello How are you', 'o')); 

您可以简单地使用replace 无需循环。 喜欢

 var str = "How are you?"; console.log(str.replace(/o/g, "")) 

g标志是替换所有出现的事件

或只是为了好玩。

 var str = "How are you?"; console.log(str.split("o").join('')) 

按所需字符split字符串。 这会给你一个数组。 现在您可以使用''加入该数组

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM