您好、欢迎来到现金彩票网!
当前位置:21点 > 字符边界 >

正则表达式 整理(w s d 点 贪婪匹配 非贪婪匹配 + ? {} [] ^ $

发布时间:2019-06-27 06:13 来源:未知 编辑:admin

  划定边界基本原则:比如表达式为 \b单词\b 的意思就是匹配字符串为单词,单词两边需要存在满足条件的边界才能匹配成功。匹配失败结果肯定是空列表,匹配成功结果就是匹配的单词字符串列表。

  匹配成功的边界满足条件跟匹配单词字符串有关联,双方是同一类型则失败,不同类型则成功

  0. \b本身的含义就有转义字符串的作用,要用字符边界就得将其原始含义去掉,所以需要加r或者\\b(两个不能一起用)

  如果是两个混在一起,判断标准为那个挨着\b最近的字符作为判断标准,如果是字母数字,则匹配边界为非字母数字才成功,反之亦然。

  结果:[] 单词为非字母数字,右匹配边界为空格(非字母数字),匹配失败

  结果:[@a] 单词为混合,@挨着\b,单词以非字母数字为标准,左匹配边界为字母,匹配成功

  结果:[@a] 单词为混合,a挨着\b,单词以字母数字为标准,右匹配边界为空格,匹配成功

  ,所以如果匹配的单词字符串在首尾,则匹配字母数字则会成功,匹配非字母数字失败。

  结果:[a] 单词为字母,左匹配边界为首,默认定义为非字母数字,匹配成功

  结果:[] 单词为非字母数字,右匹配边界为尾,默认定义为非字母数字,匹配失败

  查找,匹配成功返回第一匹配的字符串,结果为封装的对象(注意search返回的是个对象,.group() 后得到的是字符串不是列表),失败返回None

  匹配,在行首匹配字符串,方法同search,区别在于,match在行首匹配,search是从前到后全部查找匹配。

  用匹配成功的字符串作为切割符,进行原字符串的切割,返回一个切割后的列表。匹配失败,直接返回原字符串,不做任何切割处理

  #注意,这里第二个打印我在前面加了个原义字符r,但是里面\n还是转义成了换行,很奇怪,这个地方欢迎一起交流,为何会出现这种情况呢?

http://magazinski.com/zifubianjie/111.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有