Javascript RegExp字母数字字符串+;特别信件
第一个问题:我想替换除字母数字和特殊字母以外的所有字符。例如,Javascript RegExp字母数字字符串+;特别信件,javascript,regex,string,Javascript,Regex,String,第一个问题:我想替换除字母数字和特殊字母以外的所有字符。例如,somestringğşiöç123456!@#$%^&*()+到somestringğşiöç123456 第二:例如,some---example--long stringtosome example long string 我真的不知道regexp,所以我需要2个简单的regexp字符串。首先谢谢。。它匹配任何不是字母数字、空格或非ascii的字符,并用空字符串替换它们 /* 1. */ return x.replace(
somestringğşiöç123456!@#$%^&*()+
到somestringğşiöç123456
第二:例如,some---example--long string
tosome example long string
我真的不知道regexp,所以我需要2个简单的regexp字符串。首先谢谢。。它匹配任何不是字母数字、空格或非ascii的字符,并用空字符串替换它们
/* 1. */ return x.replace(/[!@#$%^&*()_+]/g, '');
/* 2. */ return x.replace(/-{2,}/g, '-');
str.replace(/[^a-z0-9\s\x80-\uFFFF]+/gi, '');
我没有可以使用的unicode类,所以我要么包含所有unicode字符,要么列出不是字母、数字或空格的字符
秒。它匹配两个或多个破折号的任意序列,并用一个破折号替换它们
str.replace(/-{2,}/g, '-');
首先。它匹配任何非字母数字、空格或非ascii的字符,并将其替换为空字符串
str.replace(/[^a-z0-9\s\x80-\uFFFF]+/gi, '');
我没有可以使用的unicode类,所以我要么包含所有unicode字符,要么列出不是字母、数字或空格的字符
秒。它匹配两个或多个破折号的任意序列,并用一个破折号替换它们
str.replace(/-{2,}/g, '-');
不,我只是想创建一些share.php脚本(作为我项目的一部分,iframe modal box)。无意冒犯。你给出了问题和答案的提示。使用Regexp可以替换特殊字符。如果它看起来像家庭作业,如果它读起来像家庭作业,那么它一定是家庭作业。请别管标签。我解释说,这不是家庭作业,这是我自己项目的一部分。如果你想感觉这是家庭作业,不需要特别的“家庭作业”标签,请不要编辑我的问题,如果你想感觉这是家庭作业,请自己做。不幸的是,我无法理解对ST社区的误解。不,我只是想创建一些share.php脚本(作为我项目的一部分,iframe modal box)。无意冒犯。你给出了问题和答案的提示。使用Regexp可以替换特殊字符。如果它看起来像家庭作业,如果它读起来像家庭作业,那么它一定是家庭作业。请别管标签。我解释说,这不是家庭作业,这是我自己项目的一部分。如果你想感觉这是家庭作业,不需要特别的“家庭作业”标签,请不要编辑我的问题,如果你想感觉这是家庭作业,请自己做。不幸的是,我无法理解对ST社区的误解。
ğ
和ş
在\x80-\xff
块之外。你可以将这些替换组合起来:str.replace(/[^a-z0-9\s\x80-\uFFFF]+/gi,“-”)
@Gumbo:不完全是这样,因为那样会引入一个破折号。当然,这可能没问题,但这不是规定的。尽管如此,在一个正则表达式中可以做到这一点,但我不确定这是否值得,我也不确定OP想要什么a#-#-#-#-#-#b
变成(即a--b
或a-b
)a
和a
在\x80-\xff
块之外。您可以将这些替换组合起来:str replace(/[^a-z0-9\s\x80-\uFFFF]+/gi,“-”
@Gumbo:不完全是这样,因为那样会在a###b
中引入一个破折号。当然,这可能没什么问题,但这不是指定的。尽管如此,在一个正则表达式中也可以做到这一点,但我不确定这是否值得,我也不确定OP希望a#b
变成什么(即a--b
或a-b
?)两个或多个连字符应替换为空字符串。您第一次是对的:这应该是replace(/-{2,}/g,'-'))
一些---示例
-->一些示例
@Silent&@Kobi:实际上没有区别,他们都做相同的事情。我只是测试了一下。@oguz-我不明白这怎么可能,那会将a--b
更改为ab
,而不是a-b
@Kobi:你说得对,@Kenny:对不起,不知道我当时在想什么e连字符应该替换为空字符串。您第一次是对的:应该是replace(/-{2,}/g,'-'))
一些----example
-->一些例子
@Silent&@Kobi:实际上没有区别,他们都做相同的事情。我只是测试了一下。@oguz-我不明白这怎么可能,那会把a--b
改成ab
,而不是a-b
@Kobi:你说得对,@Kenny:对不起,我不知道我在想什么