Javascript 从字符串中删除字符
在JavaScript中,从字符串中删除字符有哪些不同的方法?您可以使用函数Javascript 从字符串中删除字符,javascript,string,Javascript,String,在JavaScript中,从字符串中删除字符有哪些不同的方法?您可以使用函数 str.replace(regexp|substr, newSubstr|function) 将replace()与正则表达式一起使用是最灵活、最强大的。这也是全局替换JavaScript中搜索模式的每个实例的唯一方法。replace()的非正则表达式变量将只替换第一个实例 例如: var str = "foo gar gaz"; // returns: "foo bar gaz" str.replace('g',
str.replace(regexp|substr, newSubstr|function)
将replace()
与正则表达式一起使用是最灵活、最强大的。这也是全局替换JavaScript中搜索模式的每个实例的唯一方法。replace()
的非正则表达式变量将只替换第一个实例
例如:
var str = "foo gar gaz";
// returns: "foo bar gaz"
str.replace('g', 'b');
// returns: "foo bar baz"
str = str.replace(/g/gi, 'b');
在后一个示例中,尾随的/gi
表示大小写不敏感和全局替换(这意味着不应仅替换第一个实例),这是在字符串中替换时通常需要的
要删除字符,请使用空字符串作为替换:
var str = "foo bar baz";
// returns: "foo r z"
str.replace(/ba/gi, '');
我知道这是旧的,但如果您进行拆分,然后加入它将删除特定角色的所有出现,即:
var str = theText.split('A').join('')
将从字符串中删除所有出现的“A”,显然它不区分大小写,它可以删除字符列表(一次删除多个字符)-例如从电话号码中删除
+,-,(,)
:
var str = "+(48) 123-456-789".replace(/[-+()\s]/g, ''); // result: "48123456789"
我们使用正则表达式[-+()\s]
在[
和]
之间放置不需要的字符
(“
\s
”是“空格”字符转义-有关更多信息,请参阅google的“regexp中的字符转义”)到目前为止,还没有人提到的另一种方法是substr方法,它可以从另一个字符串中生成字符串……如果您的字符串定义了长度,并且删除的字符位于字符串的任一端……或者位于字符串的某个“静态维度”内,则此方法非常有用。回答得好。顺便说一下,str.replace('g','b')代码>本身不工作。使用str=str.replace('g','b')
会使答案更好。这不是一个就地函数,因此您必须执行theText=theText.split('A')。join('')
,才能工作。此命令对于括号等奇数字符特别有用。根据您的注释进行更新,您可以使用更简单、更强大的regexp:var str=“+(48)123-456-789”。替换(/[\D]/g');//结果:“48123456789”
这是否回答了您的问题?