\b - 表示以什么开头或结尾

\d - 匹配数字

\w - 匹配字母或数字或下划线或汉字(我试验下了,发现3.x版本可以匹配汉字,但2.x版本不可以)

\s - 匹配任意的空白符

^ - 匹配字符串的开始

$ - 匹配字符串的结束

2.

\S其实就是\s的反义,任意不是空白符的字符。同理,还有:

\W - 匹配任意不是字母,数字,下划线,汉字的字符

\D - 匹配任意非数字的字符

\B - 匹配不是单词开头或结束的位置

[a]的反义是[^a],表示除a以外的任意字符。[^abcd]就是除abcd以外的任意字符。

3.

之前我们用过*、+、{}来表示字符的重复。其他重复的方式还有:

? - 重复零次或一次

{n,} - 重复n次或更多次

{n,m} - 重复n到m次

正则表达式不只是用来从一大段文字中抓取信息,很多时候也被用来判断输入的文本是否符合规范,或进行分类。来点例子看看:

^\w{4,12}$

这个表示一段4到12位的字符,包括字母或数字或下划线或汉字,可以用来作为用户注册时检测用户名的规则。(但汉字在python2.x里面可能会有问题)

\d{15,18}

表示15到18位的数字,可以用来检测身份证号码

^1\d*[x]?

以1开头的一串数字,数字结尾有字母x,也可以没有。有的话就带上x。

另外再说一下之前提到的转义字符\。如果我们确实要匹配.或者*字符本身,而不是要它们所代表的元字符,那就需要用\.或\*。\本身也需要用\\。

比如"\d+\.\d+"可以匹配出123.456这样的结果。

最新文章

  1. CefSharp 初用遇到的一些问题及解决方法
  2. js禁止网页使用右键
  3. (转) C#如何使用异步编程
  4. iOS7 中的新加入的下载类NSURLSession(随ios版本更新而更新)
  5. 使用Socket进行通信
  6. OpenJudge计算概论-能被3,5,7整除的数
  7. 【32】确定你的public继承塑模出Is-A关系
  8. 修改Activity的继承类导致程序闪退
  9. 工信部表态支持Linux,可是Linux又是什么呢?
  10. Android必知必会-Stetho调试工具
  11. 开源RPC(gRPC/Thrift)框架性能评测
  12. Linux基本操作——文件相关
  13. 封装7z软件实现批量文件或目录压缩
  14. php 表单提交方法
  15. [ONTAK2010]Peaks kruskal重构树,主席树
  16. Fibonacci数列时间复杂度之美妙
  17. Windows服务器PHPstudy配置安装微擎教程
  18. java String标准格式转换Date(yyyy-MM-dd HH:mm:ss)
  19. 用canvas画布画一个画板
  20. word批量转pdf文件快捷方法。

热门文章

  1. Gemini.Workflow 双子工作流入门教程五:业务表单开发
  2. ruby 正则表达式
  3. Python环境问题
  4. 鸟哥的Linux私房菜-第10/11/12/13章(vim程序编辑器、学习bash、正则表达式与文件格式化处理、学习Shell Scripts)
  5. html5--1.3 元素的概念与3个常用标签
  6. 第三届蓝桥杯预赛c++b组
  7. hdu 6121 Build a tree
  8. VC6.0实用小技巧
  9. 作业3rd
  10. 「NOIP2016」「P1850」 换教室(期望dp