原文:正则表达式详解(贪婪与懒惰、前瞻与后顾、后向引用等)

一 名词解释首先我们了解几个名词:元字符 普通字符 打印字符 非打印字符 限定符 定位符 非打印字符 元字符:可以简单理解为变成语言中的关键字,在正则匹配时会有特殊的语义,不能当做普通字符直接使用,类似于 等等一类的字符,如果需要直接使用元字符,需要使用 元字符 的方式,比如 要匹配 号 则正则应该写成 普通字符:普通字符就是包括所有的非元字符在内的打印字符和非打印字符 打印字符:普通的字符,没 ...

2019-08-15 09:35 0 408 推荐指数:

查看详情

正则表达式-贪婪懒惰

事故: 今天写vpnbook.py的时候(参见vpnbook.py),遇到一个问题,匹配到太多的数据,而且是我不需要的。 我要对某个html进行解析,又为了跨平台和快速使用,就没有使用第三方库(比 ...

Tue Apr 29 09:57:00 CST 2014 1 5483
正则表达式贪婪懒惰

正则表达式中包含能接受重复的限定符时,通常的行为是(在使整个表达式能得到匹配的前提下)匹配尽可能多的字符。以这个表达式为例:a.b,它将会匹配最长的以a开始,以b结束的字符串。如果用它来搜索aabab的话,它会匹配整个字符串aabab。这被称为贪婪匹配。 有时,我们更需要懒惰匹配,也就 ...

Sun Dec 27 21:33:00 CST 2015 0 2145
正则表达式前瞻后顾,负前瞻,负后顾

举个例子: 有个字符串 str = "博客园 顾客 博客 客园" 我们想匹配字符串里"博客园"的"客"字而不要其他的"客"字,这时就需要用到前瞻后顾正则表达式如下: 反过来,我们不想要"博客园"的"客"字,但是想要其他"客"字。这时就要用到负前瞻,负后顾 正则表达式 ...

Fri Sep 23 01:44:00 CST 2016 2 6291
python 的正则表达式 贪婪模式与懒惰模式

正则表达式中用于表示匹配数量的元字符如下: ?   重复0次或1次,等同于{0,1} *  重复0次或更多次,等同于{0,} +  重复1次或更多次,等同于{1,} {n,} 重复n次及以上 上面的表示匹配次数的元字符分为 ...

Fri Mar 17 20:52:00 CST 2017 0 1438
$python正则表达式系列(4)——分组和后向引用

分组,即分组匹配,也称为捕获组,是正则中的一种比较重要的匹配方式。此外后向引用和分组相结合,可以写出很多复杂匹配场景的正则。 1. 分组 分组的方法:将子表达式用小括号括起来,如:(exp),表示匹配表达式exp,并捕获文本到自动命名的组里。举例: 2. 忽略某个分组 ...

Wed Jul 05 06:55:00 CST 2017 0 2764
正则表达式后向引用

---恢复内容开始--- 摘自《shell脚本学习指南》P53: 例如: \(ab\)\(cd\)[def]*\2\1 \(与\)之间的就是子表达式,例如该表达式中的ab和cd ,所以该式子有两个子表达式。中括号内的def和"*"组成[def]*则表示中号内的def出现其中任意 ...

Tue Nov 03 00:45:00 CST 2015 0 2050
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM