Regex 用于去除特殊字符的正则表达式
我试图使用regex.replace删除不需要的字符,但我需要考虑空格:Regex 用于去除特殊字符的正则表达式,regex,Regex,我试图使用regex.replace删除不需要的字符,但我需要考虑空格: string asdf = "doésn't work?"; string regie = @"([{}\(\)\^$&._%#!@=<>:;,~`'\’ \*\?\/\+\|\[\\\\]|\]|\-)"; Response.Write(Regex.Replace(asdf,regie,"").Replace(" ","-")); string asdf=“doésn't work?”; 字符串re
string asdf = "doésn't work?";
string regie = @"([{}\(\)\^$&._%#!@=<>:;,~`'\’ \*\?\/\+\|\[\\\\]|\]|\-)";
Response.Write(Regex.Replace(asdf,regie,"").Replace(" ","-"));
string asdf=“doésn't work?”;
字符串regie=@“([{}\(\)\^$&.\%\!@=:;,~`'\'\*\?\/\+\\\\\[\\\\]\]\-”;
Write(Regex.Replace(asdf,regie,“”).Replace(“,”-”);
返回doésntwork而不是doésnt work
想法
谢谢 正则表达式包含一个空格,因此在调用
字符串.Replace
之前,空格会被去掉
string regie = @"([{}\(\)\^$&._%#!@=<>:;,~`'\’ \*\?\/\+\|\[\\\\]|\]|\-)";
^ here
string regie=@“([{}\(\)\^$&.\%\\!@=:;,~`'\'\*\?\/\+\\\\[\\\\]\]\\-”;
^这里
将其从正则表达式中删除,您的代码将执行预期的操作:
string regie = @"([{}\(\)\^$&._%#!@=<>:;,~`'\’\*\?\/\+\|\[\\\\]|\]|\-)";
string regie=@“([{}\(\)\^$&.\%\\!@=:;,~`'\'\*\?\/\+\\\\[\\\\]\]\\-”;
您的正则表达式包含一个空格,因此在调用字符串.Replace
之前,空格会被去掉
string regie = @"([{}\(\)\^$&._%#!@=<>:;,~`'\’ \*\?\/\+\|\[\\\\]|\]|\-)";
^ here
string regie=@“([{}\(\)\^$&.\%\\!@=:;,~`'\'\*\?\/\+\\\\[\\\\]\]\\-”;
^这里
将其从正则表达式中删除,您的代码将执行预期的操作:
string regie = @"([{}\(\)\^$&._%#!@=<>:;,~`'\’\*\?\/\+\|\[\\\\]|\]|\-)";
string regie=@“([{}\(\)\^$&.\%\\!@=:;,~`'\'\*\?\/\+\\\\[\\\\]\]\\-”;
您的正则表达式中有一个空格,就在这里:\'\*
您的正则表达式中有一个空格,就在这里:\'\*
这可以帮您省去尴尬:这可以帮您省去尴尬: