IOS中用正则表达式判断输入的内容为8-16位且同时包含数字和字母

发布时间 - 2026-01-11 02:00:42    点击率:

今天在项目中需要用到判断用户输入的用户名长度为8-16位且同时包含数字和字母,在网上搜了一下正则表达式的用法,然后参考这篇文章,完美解答了问题。记录一下:

密码有如下要求:由数字和字母组成,并且要同时含有数字和字母,且长度要在8-16位之间。

如何分析需求?拆分!这就是软件设计的一般思路了。于是乎,拆分需求如下:

1,不能全部是数字

2,不能全部是字母

3,必须是数字或字母

只要能同时满足上面3个要求就可以了,写出来如下:

^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,16}$
分开来注释一下:
^ 匹配一行的开头位置
(?![0-9]+$) 预测该位置后面不全是数字
(?![a-zA-Z]+$) 预测该位置后面不全是字母
[0-9A-Za-z] {8,16} 由8-16位数字或这字母组成
$ 匹配行结尾位置

注:(?!xxxx) 是正则表达式的负向零宽断言一种形式,标识预该位置后不是xxxx字符。

用在iOS中的代码:

** 
 * @author KaKa, 15-07-31 14:07:02 
 * 
 * 判断用户输入的密码是否符合规范,符合规范的密码要求: 
 1. 长度大于8位 
 2. 密码中必须同时包含数字和字母 
 */ 
+(BOOL)judgePassWordLegal:(NSString *)pass{ 
 BOOL result = false; 
 if ([pass length] >= 8){ 
 // 判断长度大于8位后再接着判断是否同时包含数字和字符 
 NSString * regex = @"^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,16}$"; 
 NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex]; 
 result = [pred evaluateWithObject:pass]; 
 } 
 return result; 
} 

有关更多正则表达式的写法大家可以参考本文:

https://www./article/72867.htm

以上所述是小编给大家介绍的IOS中用正则表达式判断输入的内容为8-16位且同时包含数字和字母,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# ios  # 正则表达式判断内容  # iOS中正则表达式的运用示例代码  # iOS中常见正则表达式验证方法  # 浅谈iOS应用中的相关正则及验证  # iOS 正则表达式判断手机号码、固话  # iOS 正则表达式判断纯数字及匹配11位手机号码的方法  # IOS正则表达式判断输入类型(整理)  # iOS开发验证判断语句之正则表达式小结  # iOS开发 正则运算详细介绍  # iOS 正则表达式详解  # IOS开发常用的正则表达式  # iOS中使用正则表达式NSRegularExpression 来验证textfiled输入的内容  # IOS中NSPredicate和NSRegularExpression校验正则表达式区别  # 正则表达式  # 不全  # 小编  # 在此  # 这就是  # 要在  # 给大家  # 这篇文章  # 用在  # 所述  # 给我留言  # 感谢大家  # 就可以  # 是否符合  # 再接  # 长度为  # 判断是否  # 疑问请  # 有任何  # 在网上 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  高防服务器如何保障网站安全无虞?  香港服务器如何优化才能显著提升网站加载速度?  JavaScript如何实现音频处理_Web Audio API如何工作?  如何用搬瓦工VPS快速搭建个人网站?  Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区  Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程  JS弹性运动实现方法分析  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  香港网站服务器数量如何影响SEO优化效果?  如何用y主机助手快速搭建网站?  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  独立制作一个网站多少钱,建立网站需要花多少钱?  Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】  Bootstrap整体框架之CSS12栅格系统  laravel怎么通过契约(Contracts)编程_laravel契约(Contracts)编程方法  JavaScript常见的五种数组去重的方式  Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】  为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】  如何在景安云服务器上绑定域名并配置虚拟主机?  在centOS 7安装mysql 5.7的详细教程  Swift中循环语句中的转移语句 break 和 continue  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】  Laravel事件监听器怎么写_Laravel Event和Listener使用教程  动图在线制作网站有哪些,滑动动图图集怎么做?  Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】  1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤  Laravel如何使用Contracts(契约)进行编程_Laravel契约接口与依赖反转  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  Win11怎么恢复误删照片_Win11数据恢复工具使用【推荐】  javascript中闭包概念与用法深入理解  ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集  佛山网站制作系统,佛山企业变更地址网上办理步骤?  如何自定义safari浏览器工具栏?个性化设置safari浏览器界面教程【技巧】  Laravel如何实现数据库事务?(DB Facade示例)  Laravel怎么进行数据库回滚_Laravel Migration数据库版本控制与回滚操作  laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法  Windows10电脑怎么设置虚拟光驱_Win10右键装载ISO镜像文件  Android自定义控件实现温度旋转按钮效果  深圳网站制作的公司有哪些,dido官方网站?  利用 Google AI 进行 YouTube 视频 SEO 描述优化  Laravel如何实现API资源集合?(Resource Collection教程)  如何在IIS中新建站点并配置端口与IP地址?  JavaScript中的标签模板是什么_它如何扩展字符串功能  Javascript中的事件循环是如何工作的_如何利用Javascript事件循环优化异步代码?  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  如何在IIS服务器上快速部署高效网站?  如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】