Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 删除字符串为String.prototype.replace的非字母数字文本_Javascript_Regex - Fatal编程技术网

Javascript 删除字符串为String.prototype.replace的非字母数字文本

Javascript 删除字符串为String.prototype.replace的非字母数字文本,javascript,regex,Javascript,Regex,我试图去掉一个字符串中所有不是字母或数字的字符。我尝试使用正则表达式替换String.prototype.replace,但没有删除预期的字符: this.colorPreset1 = this.colorPreset1.replace(/^[0-9a-zA-Z]+$/, ''); 角色组已更改为排除组[^]将匹配列表中未包含的任何字符。正如你所拥有的,它只会匹配你想要保留的角色 字符串的锚已删除-您希望替换任何非字母数字字符,因此它们位于何处无关紧要 添加了全局标志//g,因此它将替换所有匹

我试图去掉一个字符串中所有不是字母或数字的字符。我尝试使用正则表达式替换
String.prototype.replace
,但没有删除预期的字符:

this.colorPreset1 = this.colorPreset1.replace(/^[0-9a-zA-Z]+$/, '');
角色组已更改为排除组<代码>[^]将匹配列表中未包含的任何字符。正如你所拥有的,它只会匹配你想要保留的角色

字符串的锚已删除-您希望替换任何非字母数字字符,因此它们位于何处无关紧要

添加了全局标志
//g
,因此它将替换所有匹配项,而不仅仅是第一个匹配项

角色组已更改为排除组<代码>[^]将匹配列表中未包含的任何字符。正如你所拥有的,它只会匹配你想要保留的角色

字符串的锚已删除-您希望替换任何非字母数字字符,因此它们位于何处无关紧要


添加了全局标志
//g
,因此它将替换所有匹配项,而不仅仅是第一个匹配项。

JavaScript RegEx replace将只替换第一个找到的值。如果在模式中指定
g
参数,则表示全局或“全部替换”


JavaScript正则表达式替换将只替换第一个找到的值。如果在模式中指定
g
参数,则表示全局或“全部替换”


通过在正则表达式周围添加
^
$
,可以明确告诉它匹配以该模式开头和结尾的字符串

因此,只有当字符串的所有内容都与模式匹配时,它才会替换搜索到的模式

如果要匹配每次出现的非数字或字母字符,必须删除
^
开始约束和
$
结束约束,但还必须更改模式本身:

[A-Za-z0-9]
匹配字母或数字字符,您希望与之相反(要反转字符类,请在字符类的开头添加
^

[^A-Za-z0-9]
最后,将
g
选项添加到正则表达式中,告诉它匹配每个事件(否则仅替换第一个事件):


通过在正则表达式周围添加
^
$
,可以明确地告诉它匹配以该模式开头和结尾的字符串

因此,只有当字符串的所有内容都与模式匹配时,它才会替换搜索到的模式

如果要匹配每次出现的非数字或字母字符,必须删除
^
开始约束和
$
结束约束,但还必须更改模式本身:

[A-Za-z0-9]
匹配字母或数字字符,您希望与之相反(要反转字符类,请在字符类的开头添加
^

[^A-Za-z0-9]
最后,将
g
选项添加到正则表达式中,告诉它匹配每个事件(否则仅替换第一个事件):


解释你发布的代码为什么有效是有益的。它鼓励理解而不仅仅是复制/粘贴代码。解释你发布的代码为什么有效是有益的。它鼓励理解而不仅仅是复制/粘贴代码。
/[^A-Za-z0-9]+/g