检查 NSString 是否包含特殊字符和数字
我需要检查一个字符串是否包含一个大写字母,一个小写字母,一个整数和一个特殊字符。我该如何检查?
I need to check whether a string contains one uppercase letter, one lower case letter, one integer and one special character. How do I check?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
没有任何其他框架:
您还可以使用正则表达式(此语法来自 RegexKitLite: http://regexkit.sourceforge.net< /a>):
Without any additional frameworks:
You could also use a regex (this syntax is from RegexKitLite: http://regexkit.sourceforge.net):
找到了一个稍微好一点的实现。对 Ameesh 答案的改进
Found a slightly better implementation. Improvement on Ameesh's answer
Maulik的答案是不正确的。这将检查除任何字母数字字符之外的任何内容,但不强制要求存在一个大写字母、一个小写字母和一个整数。事实上,您必须执行 3 次检查来验证每个约束。
Maulik's answer is incorrect. That will check for anything OTHER than any alphanumeric character, but doesn't enforce that there be one uppercase letter, one lowercase letter, and one integer. You do in fact have to do 3 checks to verify each constraint.
阿拉伯语/英语
For Arabic/English
这就是我要做的。为您需要检查相应值是否存在的每个条件创建正则表达式。
即正则表达式检查它是否有一个大写字母,一个小写字母,一个整数和一个特殊字符,等等。
然后使用相同的字符串检查每个正则表达式,如果它们都返回 true,则您有获胜者,如果不是,则字符串与您的条件不匹配。
// 验证大写字母的示例对所有其他具有匹配正则表达式的示例执行相同的操作。
Here is what I would do. Create Regular expressions for every condition you need to check if corresponding value present or not.
i.e. Regular Expression to check if it has one uppercase letter, one lower case letter , one integer and one special character, and so on.
and then use the same string to check against every regular expression if all of them return true you have winner if not then string doesn't match to your criteria.
// Example for the Validating UpperCaseLetter do same for all others with matching regular expression.