C# 将字符串中非数字非英文字母的字符替换掉

时间:2020-12-23 06:21:57
需求:将str中非数字非英文字母的字符替换成“-”
str=“a829ks&*……%……&维基  & % #87 fwioej”


6 个解决方案

#1


正则替换 正则 [^a-zA-z]

#2


[^a-zA-z0-9]

#3


拿着代码过来发现有人回复了。。。还是要强行发啊

var str = Regex.Replace("a829ks&*……%……&维基  & % #87 fwioej", "[^a-zA-Z0-9]", "-");

#4


引用 2 楼 langziqiushui 的回复:
[^a-zA-z0-9]


输出结果里还会包含^字符

#5




引用 2 楼 langziqiushui 的回复:
[^a-zA-z0-9]


如果
string xx = "wefwefui92378fejfio283有7fj3898龙f&^%^&%#wfei378%^开";

输出结果会有^字符

#6


引用 3 楼 StratosBlue 的回复:
拿着代码过来发现有人回复了。。。还是要强行发啊

var str = Regex.Replace("a829ks&*……%……&维基  & % #87 fwioej", "[^a-zA-Z0-9]", "-");

谢谢!

#1


正则替换 正则 [^a-zA-z]

#2


[^a-zA-z0-9]

#3


拿着代码过来发现有人回复了。。。还是要强行发啊

var str = Regex.Replace("a829ks&*……%……&维基  & % #87 fwioej", "[^a-zA-Z0-9]", "-");

#4


引用 2 楼 langziqiushui 的回复:
[^a-zA-z0-9]


输出结果里还会包含^字符

#5




引用 2 楼 langziqiushui 的回复:
[^a-zA-z0-9]


如果
string xx = "wefwefui92378fejfio283有7fj3898龙f&^%^&%#wfei378%^开";

输出结果会有^字符

#6


引用 3 楼 StratosBlue 的回复:
拿着代码过来发现有人回复了。。。还是要强行发啊

var str = Regex.Replace("a829ks&*……%……&维基  & % #87 fwioej", "[^a-zA-Z0-9]", "-");

谢谢!