python 正则表达式训练题

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

\d:数字
\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. 怎么让正则表达式从字符串的右边开始匹配?

使用KaTeX parse error: Undefined control sequence: \d at position 14: 则表示从右边开始匹配,比如\̲d̲{2}表示从右开始匹配两个数字

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

^\w+$

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

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

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

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

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

^(?=.\d)(?=.[A-Z]) (?=.[a-z]) (?=.[!@%^*?~])[\u4E00-\u9FA5A-Za-z0-9!@%^*?~]{6,16}$

10. 匹配QQ号。

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

11. 匹配Email地址。

([\w-]+(.[\w-]+)*@[\w-]+(.[\w-]+)+)

12. 匹配手机号。

^1[3-9]\d{9}$

13. 匹配固定电话号码。

^((0\d{2,3})|0\d{2,3})-?\d{7,8}(-\d{1,6})?$

14. 用正则表达式分别提取固定电话号码中的区号和电话号。

(?<=()\d{3,4}(?=)-?\d{7,8}(-\d{1,6})?KaTeX parse error: Undefined control sequence: \d at position 4: )|^\̲d̲{3,4}(?=\-?\d{7…)

(?<=^\d{3,4}-?)\d{7,8}(?=(\d{1,6})?KaTeX parse error: Got function '\(' with no arguments as superscript at position 8: )|(?<=^\̲(̲\d{3,4}\)\-?)\d…)

(?<=^\d{3,4}-?\d{7,8}-)\d{1,6}KaTeX parse error: Got function '\(' with no arguments as superscript at position 7: |(?<=^\̲(̲\d{3,4}\)-?\d{7…

15. 匹配身份证号码。

^\d{18}|\d{17}[Xx]$

16. 匹配出身份证号码中的区域代码。

(?<=^)\d{6}(?=\d{12}KaTeX parse error: Undefined control sequence: \d at position 9: )|(?<=^)\̲d̲{6}(?=\d{11}[Xx…)

17. 用正则表达式匹配出身份证号中的出生日期。

(?<=^\d{6})\d{8}(?=\d{4}KaTeX parse error: Undefined control sequence: \d at position 8: )|(?<=^\̲d̲{6})\d{8}(?=\d{…)

18. 匹配银行卡号。

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

19. 匹配邮政编码。

^\d{6}$

20. 匹配包含送货地址的字符串。

^[\s\S]送货地址[\s\S]$

21. 匹配车牌号。

^(京津冀晋蒙辽吉黑沪苏浙皖闽赣鲁豫鄂湘粤桂琼渝川贵云藏陕甘青宁新|[1-3]\d{5}使|(WJ)[京津冀晋蒙辽吉黑沪苏浙皖闽赣鲁豫鄂湘粤桂琼渝川贵云藏陕甘青宁新]?((?=[A-Z])(?!I|O).|[0-9]){5}|((?=[A-Z])(?!I).){2}[0-9]{5})$

22. 匹配整数。

^-?\d+$

23. 匹配非零的负整数。

^\-(?!0)\d+$

24. 匹配非零的正整数。

^(?!0)\d+$

25. 匹配浮点数。

^(-?\d*.?\d*([eE][-+]?\d+)?|0)$

26. 匹配非负浮点数。

^(\d*.?\d*([eE][-+]?\d+)?|0)$

28. 匹配以下HTML中的URL:

<link rel=“search” href=“https://www.baidu.com” />
 (?<=href=\s?“).*?(?=”\s?/>)

29. 匹配HTML标记。

<.*?>

30. 匹配<a <123> <456> a>中的数字。

(?<=<)\d+(?=>)

31. 匹配<a <123 <456> a>中的数字。

(?<=<)\d+(?=>)?

32. 匹配以.com结尾的web域名。

^(?=^.{4,255}$)[a-zA-Z0-9][a-zA-Z0-9-]{0,62}(.[a-zA-Z0-9][a-zA-Z0-9-]{0,62})*.com$

33. 匹配IP地址。

^(2([0-4]\d|5[0-5])|1\d{2}|[1-9]\d|[1-9])(.(2([0-4]\d|5[0-5])|1\d{2}|[1-9]?\d)){3}$

34. 匹配MAC地址。

^([0-9A-Fa-f]{2}[:-]){5}[0-9A-Fa-z]{2}$

35. 匹配文件名的后缀(注意文件名中可能出现.号)

((?!.).)*?$

36. 匹配文件名(注意文件名中可能出现.号)。

^.*(?=.)

37. 匹配汉字。

[\u4e00-\u9fa5]

38. 匹配AABB型成语。

^([\u4e00-\u9fa5])\1((?=[\u4e00-\u9fa5])(?!\1).)\2$

39. 匹配ABAB型成语。

^([\u4e00-\u9fa5])((?=[\u4e00-\u9fa5])(?!\1).)\1\2$

40. 匹配yyyy-mm-dd格式的日期。

^(\d{4}(?!0{4})-((0[13578]|1[02])-31|(01|0[3-9]|1[0-2])-(29|30)|(0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-8]))|((\d{2}(0[48]|[13579][26]|[2468][048])|(0[48]|[13579][26]|[2468][048])00)-02-29))$

41. 使用正则表达式让2020-05-20 变成 2020.05.20

42. 使用正则表达式给数字加上千分符。

(?=\B(\d{3})+(?=.))

43. 去除字符串中的中文。

[\x{4e00)-\x({9fa5)]

44. 去除字符串中的特殊字符。

[^A-Za-z0-9\x{4e00)-\x({9fa5)]

45. 去除字符串中的空白字符。

\s

46. 匹配第一个连续出现的字符。

(.+)1

正则表达式练习题(含答案)相关推荐

  1. 计算机一级办公软件试题,计算机一级《MS Office》练习题(含答案)

    计算机一级<MS Office>练习题(含答案) 11.完整的计算机软件指的是__________. A.程序.数据与相应的文档 B.系统软件与应用软件 C.操作系统与应用软件 D.操作系 ...

  2. 计算机一级ms office模拟真题,2016计算机一级《MS Office》模拟练习题(含答案)

    2016计算机一级<MS Office>模拟练习题(含答案) 答案与解析 (1)A. [解析]Windows属于单用户多任务操作系统. (2)B. [解析]ASCI1码7位编码27=128 ...

  3. 计算机office测试题带答案,2016计算机一级《MS Office》模拟练习题(含答案)

    2016计算机一级<MS Office>模拟练习题(含答案) 1.微机上广泛使用的Windows是_______. A.多任务操作系统 B.单任务操作系统 C.实时操作系统 D.批处理操作 ...

  4. 数字正方形c语言答案,正方形练习题(含答案)

    <正方形练习题(含答案)>由会员分享,可在线阅读,更多相关<正方形练习题(含答案)(3页珍藏版)>请在人人文库网上搜索. 1.正方形练习题1. 菱形.矩形.正方形都具有的性质是 ...

  5. 基础医学概论练习题(含答案)

    基础医学概论练习题(含答案) 1. 人体最大.最复杂的关节是(   ) A.肩关节   B.肘关节   C.膝关节   D.腕关节    E.髋关节 2. 全身活动度最大的关节是(   ) A.肩关节 ...

  6. oracle完整的练习,2021史上最全Oracle数据库基本操作练习题(含答案).docx

    Oracle基本操作练习题 使用表: 员工表(emP): (empndNUMBEER) notnull ,--员工编号,表示唯一 enameZARCHAR20),--员工姓名 VARCHAR9),-- ...

  7. 初学者:java练习题———含答案-------类与对象(2)

    一 //声明RectTest类 class RectTest{public static void main(String args[]){Rect rect1=new Rect();System.o ...

  8. 【UML】-- 活动图练习题含答案(打印合同、请假、公司评审、签订合同、软件发布、会见客户)

    一.练习一 画出一个打印所有履约合同信息的活动图.各个活动的执行顺序如下: 1.操作员在合同窗口选择"打印所有履约合同"操作. 2.系统判定磁盘是否有合适的可用磁盘存储空间,有两种 ...

  9. 【UML】-- 用例图练习题含答案(订餐系统、远程网络教学系统、交互式网络系统)

    一.练习一 公司有一个简单的订餐系统,员工可以在网站上查看菜单并提交当天午餐订餐信息,若订餐信息有误还可取消订餐:前台需对网站上的菜单进行管理(包括增加菜式.删除菜式.修改菜式),并且汇总每个人的订餐 ...

  10. 【UML】-- 顺序图练习题含答案(自动售货机、学生选课、提款机、购买地铁票、洗衣机工作)

    注意:对象表示法对象名需要下划线,此文章没有标注 一.练习一 根据下面的叙述,绘制一幅关于顾客从自动售货机中购买物品的顺序图. 顾客(User)先向自动售货机的前端(Front)投币: 售货机的识别器 ...

最新文章

  1. MetaHuman效果炸了!但如果只想到元宇宙,那格局有点小了
  2. sftp 服务器外网访问设置
  3. 开始协议处理句柄_基于smb协议的wmiexec浅析
  4. easyui怎样实现textarea
  5. Win2003下架构Mrtg服务器
  6. groupmod 修改用户组信息
  7. 如何在微信里找到小程序?
  8. 在linux上下载图片,在Linux上使用4k Stogram下载Instagram图片库 | MOS86
  9. 微信公众平台开发文档
  10. Android5.1开机LOGO与开机动画
  11. 快速转换:将音乐文件转换为MP3格式的步骤
  12. 爬取唯品会口红数据,这次哪家打折力度最大?我看到0.8折的
  13. Excel文本日期格式转为日期格式的方法
  14. 怎样使用JPQL查询出每个部门员工的平均工资和最高工资
  15. Chrome在Win下的跨域解决方案
  16. 浅入Elasticsearch(全文检索服务器)
  17. Delphi中ComPort串口控件通信中的数据处理
  18. 解决浏览器使用百度搜索没反应?
  19. 计算机cad的概念,【2人回答】什么是CAD?CAD的含义是什么?-3D溜溜网
  20. “学而不思则罔,思而不学则殆”在实施工作中的思考

热门文章

  1. 【评测】MP DSS肠炎模型专用
  2. QNX系统挂载CF卡
  3. L3级自动驾驶接管实验测试平台及其应用研究
  4. mysql zombodb_zombodb安装试用
  5. 侍魂无限跳服务器,经典游戏《真侍魂》橘右京的无限残像,对手就这么活活的被挡死了...
  6. 侍魂服务器维护中,侍魂出现BUG,却是玩家们日思夜想希望出现的功能!
  7. FFMPEG使用 frei0r 给视频添加马赛克效果
  8. SSL基础:20:使用x509子命令为其他证书签名
  9. 爬虫框架:Scrapy 快速入门
  10. 「项目进度管理」如何编制有效的进度计划?