c# – 检查字符串是否包含无效字符?最聪明的方式?
发布时间:2020-12-15 08:08:16 所属栏目:百科 来源:网络整理
导读:我想检查一些字符串是否有无效字符.对于无效字符,我的意思是不应该存在的字符.这些是什么字符?这是不同的,但我认为那不重要,重要的是我应该怎么做以及最简单和最好的方式(性能)做到这一点? 假设我只想要包含’A-Z’,’空’,’.’,’$’,’0-9’的字符串 所
我想检查一些字符串是否有无效字符.对于无效字符,我的意思是不应该存在的字符.这些是什么字符?这是不同的,但我认为那不重要,重要的是我应该怎么做以及最简单和最好的方式(性能)做到这一点?
假设我只想要包含’A-Z’,’空’,’.’,’$’,’0-9’的字符串 所以,如果我有一个字符串,如“HELLO STaCKOVERFLOW”=>无效,因为’a’. 解决方法
您可以使用正则表达式:
Regex r = new Regex("[^A-Z0-9.$]$"); if (r.IsMatch(SomeString)) { // validation failed } 要创建A-Z或0-9中的字符列表,您将使用一个简单的循环: for (char c = 'A'; c <= 'Z'; c++) { // c or c.ToString() depending on what you need } 但是你不需要使用正则表达式 – 几乎每个正则表达式引擎都能理解范围语法(A-Z). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |