小白的正则表达式学习之旅-01

Posted xuchuankun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小白的正则表达式学习之旅-01相关的知识,希望对你有一定的参考价值。

1.认识正则表达式:

  正则表达式,又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法(英语:Regular Expression,在代码中常简写为regexregexp或RE),是计算机科学的一个概念。。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大。得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同;但不用担心,不被支持的语法通常是不常用的部分。如果已经在其他语言里使用过正则表达式,只需要简单看一看就可以上手了。本文基于python3.6进行正则表达式的学习之旅。

2.正则表达式的分类:

 

  1、基本的正则表达式(Basic Regular Expression 又叫 Basic RegEx  简称 BREs)

 

  2、扩展的正则表达式(Extended Regular Expression 又叫 Extended RegEx 简称 EREs)

 

  3、Perl 的正则表达式(Perl Regular Expression 又叫 Perl RegEx 简称 PREs)

3.正则表达式的简单使用

3.1匹配单个字符

  1) .  "."匹配任意1个字符(除了 )

    

  技术分享图片

 

  2) .  [ ] 匹配[ ]中列举的字符

 

  技术分享图片

 

  3) . d 匹配数字,即0-9 ,D 匹配非数字之外的字符(取反)

 

  技术分享图片    

       技术分享图片

  4).s 匹配空白,即“ ”,S 非空白的字符(取反)

 

  技术分享图片  

       技术分享图片

 

  5) . w 匹配单词字符,即a-z、A-Z、0-9、_   ,W  匹配非单词字符(取反)

 

 

  技术分享图片

    技术分享图片

 

3.2 匹配多个字符:

  1).  *  匹配前一个字符出现0次或者无限次,即可有可无(简单记忆:1*0= 0 即匹配 >= 0个字符)

 

  技术分享图片

 

  2). +  匹配前一个字符出现1次或者无限次,即至少有1次(简单记忆:1+0 = 1 即匹配 >= 1个字符)

 

  技术分享图片

 

  3)? 匹配前一个字符出现1次或者0次,即要么有1次,要么没有(简单记忆:?判断真假,即只有0和1两个值,匹配0或者1个字符),该字符还有 “贪婪匹配”和“非贪婪模式有关”,后续会讲到

 

  技术分享图片

 

  4){m} 匹配前一个字符出现m次

 

  技术分享图片

  5){m,n} 匹配前一个字符出现m-n次

  技术分享图片

  注意:截图中的不同高亮颜色标注的字符串为不同的匹配结果,软件下载地址:http://www.regexbuddy.com/download.html ,对刚接触正则表达式的朋友来说十分方便,

  更多正则表达式的内容请关注我后续的更新

   

  

 

以上是关于小白的正则表达式学习之旅-01的主要内容,如果未能解决你的问题,请参考以下文章

小白的正则表达式的学习之旅-03

小白的正则表达式的学习之旅-04

Python学习之旅---模块介绍(re模块,正则表达式)

Python的学习之旅———re 模块正则表达式

少女学习日记——正则表达式专题篇

正则表达式30分钟入门教程(正则小白的圣经)