c# – 正则表达式,确保不重复任何字符
发布时间:2020-12-15 23:55:57 所属栏目:百科 来源:网络整理
导读:我需要确保输入字符串遵循以下规则: 它应仅包含大写字符. 字符串中不应重复任何字符. 例如. ABCA无效,因为’A’正在重复. 对于大写的东西,[A-Z]应该没问题. 但我迷失在如何确保没有重复的角色. 有人可以建议使用正则表达式的方法吗? 解决方法 您可以使用.N
我需要确保输入字符串遵循以下规则:
>它应仅包含大写字符. 对于大写的东西,[A-Z]应该没问题. 有人可以建议使用正则表达式的方法吗? 解决方法
您可以使用.NET正则表达式执行此操作,但我会建议不要使用它:
string s = "ABCD"; bool result = Regex.IsMatch(s,@"^(?:([A-Z])(?!.*1))*$"); 相反,我建议检查字符串的长度是否与不同字符的数量相同,并分别检查A-Z要求: bool result = s.Cast<char>().Distinct().Count() == s.Length; 另外,如果性能是一个关键问题,请逐个遍历字符并保留您所看到的记录. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |