打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
50道正则表达式笔试题参考答案(第1-10题)

各位客官姥爷好,欢迎回来。我们上节留下的50道正则表达式笔试练习题,有不少客官姥爷在后台回复他自己的答案。【嘿嘿,相信肯定也有偷懒没做的(收藏夹里吃灰)。没关系,清风在这里陪您一起做】

一次性做50道,可能对有的客官姥爷来说太多了(啊,50道,这也太多了,我不听我不听)。于是清风打算分成5小节,每小节10小道,希望各位姥爷跟紧清风的脚步。请看前10道:

第1-10题

1.  \d,\W,\s,\B,.,*,+,?分别是什么?

\d表示0-9的数字。\W表示非英文数字下划线的任意字符。\s表示任意空白字符。\B表示非单词开始或结尾的位置。.表示非换行符的任意字符。*表示匹配前面子表达式0次或多次。+表示匹配前面子表达式1次或多次。?表示匹配前面子表达式0次或1次。

2. (?=a),(?<!a),(?<=a),(?!a)分别是什么?

(?=a)表示匹配a前面的字符。(?<!a)表示匹配前面不是a的字符。(?<=a)表示匹配a后面的字符。(?!a)表示匹配后面不是a的字符。

3. 什么是贪婪匹配和懒惰匹配?

贪婪匹配:表示尽可能多的匹配,常见写法是.*懒惰匹配:也叫非贪婪匹配,表示尽可能少的匹配,常见写法是.*?

4. \d{1,2}*这样的写法对吗?请说明理由。

不正确,这是因为所有限定类元字符后只能紧跟?这个限定类元字符,如果紧跟其他限定类元字符则会报错。正确的写法是(\d{1,2})*

5. 怎么让正则表达式从字符串的右边开始匹配?

使用$则表示从右边开始匹配,比如\d{2}$表示从右开始匹配两个数字

6、写出验证用户名的正则表达式,用户名只能输入英文、数字和下划线。

^\w+$

7. 写出验证用户名的正则表达式,用户名只能输入汉字、英文、数字和下划线。

^[\w\u4e00-\u9fa5]+$

8. 验证用户密码,长度在6~18 之间,只能包含英文和数字。

^[A-Za-z0-9]{6,18}$

9. 验证用户密码强度,最少6位,至少包括1个大写字母、1个小写字母、1个数字和1个特殊字符。

^(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[~ `!@#\$%\^&\*\(\)\_\+\-\=\{\}\[\]\\\|\/\?\.,><;:'"]).{6,}$

10. 匹配QQ号。

^[1-9]\d{4,12}$

以上就是本次的分享,第11-20道参考答案请见下篇。欢迎各位客官姥爷关注我,方便您第一次时间收到资讯!

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
正则表达式
深入理解正则表达式:高效处理文本数据的利器
vba正则表达式入门
正则表达式从入门到精通 - zjcxc(邹建)的专栏
C#利用正则表达式实现字符串搜索
QRegExp正则表达式
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服