<,./;'[]\=- 删除这些字符的项目会很短,那么在每个项目上使用 REGEX 还是只使用字符串操作会更-6ren">
gpt4 book ai didi

regex - 从字符串中删除非数字和非字母字符?

转载 作者:行者123 更新时间:2023-12-04 10:33:08 24 4
gpt4 key购买 nike

从字符串中删除所有特殊字符的最佳方法是什么 - 像这样:

!@#$%^&*(){}|:"?><,./;'[]\=-

删除这些字符的项目会很短,那么在每个项目上使用 REGEX 还是只使用字符串操作会更好?

谢谢

环境 == C#/.NET

最佳答案

拥有白名单通常比拥有黑名单更好。

正则表达式有一个方便的\w这实际上意味着字母数字加下划线(某些变体还在列表中添加了重音字符(á、é、ô 等),其他则没有)。

您可以使用 \W 来反转它表示不是字母数字的所有内容。

所以替换 \W空字符串将删除所有“特殊”字符。

或者,如果您确实需要一组与字母数字不同的字符,您可以使用否定字符类:[^abc]将匹配所有不是 a 的内容或 bc , 和 [^a-z]将匹配不在 a,b,c,d...x,y,z 范围内的所有内容

相当于 \w[A-Za-z0-9_]因此 \W[^A-Za-z0-9_]

关于regex - 从字符串中删除非数字和非字母字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/528436/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com