正则语法笔记-regular expression note
参考文档:python正则表达式
正则表达式定义:正则是一门高度专业编程语言,内嵌在其他语言(python re模块)中使用。正则表达式包含元字符(metacharacter)列表,列表如下: . ^ $ * + ? { [ ] \ | ( ),这些元字符只有在合适的位置才可以发挥作用。
1. []用来指定一个我们想要字符串的集合,字符串可以单独列出,也可以通过"-"连接表示范围,例如[abc]匹配abc中如何一个元素,可以用[a-c]表示。
2 . [^]可以用补集来匹配不存在此空间范围内的字符,其做法是把"^"作为类别的首个字符;其他地方的"^"只会简单匹配“^”字符本身。例如
In [35]: m = re.search("^ab+", "asdfabbbb")
In [36]: print m
None
In [37]: m = re.search("^ab+", "absdfabbbb")
In [38]: print m
<_sre.SRE_Match object at 0x7f8bc2466c60>
In [39]: print m.group()
ab
效果如同使用re.match()函数,
In [43]: m2 = re.match("ab+", "absdfabbbb")
In [44]: print m2
<_sre.SRE_Match object at 0x7f8bc2466e68>
In [45]: print m2.group()
ab
In [51]: m2 = re.match("ab+", "absdfabbbb\nabcdefghijklmn", re.MULTILINE)
In [52]: print m2.group()
ab
总结match和search函数,两者都是找到就返回匹配结果,不会继续查找,如果需要查找所有行,那么需要调用re.findall()
In [58]: m2 = re.findall("ab+","absdfabbbb\nabcdefghijklmn" )
In [59]: print re.fi
re.findall re.finditer
In [59]: print m2
['ab', 'abbbb', 'ab']
3. 元字符(\),元字符backslash。"\"后面加反斜杠表示特殊意义。它可以用来取消元字符,这样元字符就是普通字符。
4. 元字符($)匹配字符串的结尾或者字符串结尾的换行之前。(在MULTILINE模式下,"$"也匹配换行之前)正则表达式"foo"既匹配"foo"又匹配"foobar",而"foo$"仅仅匹配"foo"
5.元字符(*),匹配0个或多个
6.元字符(?),匹配一个或者0个
7.元字符(+), 匹配一个或者多个
8,元字符(|), 表示"或",如A|B,其中A,B为正则表达式,表示匹配A或者B
9.元字符({})
{m},用来表示前面正则表达式的m次copy,如"a{5}",表示匹配5个”a”,即"aaaaa"
正则语法笔记-regular expression note的更多相关文章
- Regular Expression Syntax
python的正则表达式 正则表达式的概念 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个"规则字符串",这个"规 ...
- LeetCode 失败的尝试 10. regular expression matching & 正则
Regular Expression Matching 看到正则就感觉头大,因为正则用好了就很强大.有挑战的才有意思. 其实没有一点思路.循环的话,不能一一对比,匹配模式解释的是之前的字符.那就先遍历 ...
- Java基础-正则表达式(Regular Expression)语法规则简介
Java基础-正则表达式(Regular Expression)语法规则简介 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.正则表达式的概念 正则表达式(Regular Exp ...
- 《LeetBook》leetcode题解(10): Regular Expression Matching——DP解决正则匹配
我现在在做一个叫<leetbook>的免费开源书项目,力求提供最易懂的中文思路,目前把解题思路都同步更新到gitbook上了,需要的同学可以去看看 书的地址:https://hk029.g ...
- 正则表达式-Regular expression学习笔记
正则表达式 正则表达式(Regular expression)是一种符号表示法,被用来识别文本模式. 最近在学习正则表达式,今天整理一下其中的一些知识点 grep - 打印匹配行 grep 是个很强大 ...
- 【leetcode刷题笔记】Regular Expression Matching
Implement regular expression matching with support for '.' and '*'. '.' Matches any single character ...
- Python正则表达式Regular Expression基本用法
资料来源:http://blog.csdn.net/whycadi/article/details/2011046 直接从网上资料转载过来,作为自己的参考.这个写的很清楚.先拿来看看. 1.正则表 ...
- [转载]正则表达式参考文档 - Regular Expression Syntax Reference.
正则表达式参考文档 - Regular Expression Syntax Reference. [原创文章,转载请保留或注明出处:http://www.regexlab.com/zh/regref. ...
- java 正则表达式 -Regular Expression
正则表达式(Regular Expression),可以说就是一个字符构成的串,它定义了一个用来搜索匹配字符串的模式.正则表达式定义了字符串的模式,可以用来搜索.编辑或处理文本,不仅限于某一种语言(P ...
随机推荐
- 利用KVO监视一个view的frame
首先,keyPath一定是frame,而不是frame.origin.x之类的路径,因为再点下去的话,就是访问结构体内部的值了,KVO是无法检测的,会报错找不到KeyPath. 代码如下: [_fun ...
- leetcode 刷题之路 64 Construct Binary Tree from Inorder and Postorder Traversal
Given inorder and postorder traversal of a tree, construct the binary tree. Note: You may assume tha ...
- li span兼容性问题
li与span的搭配使用所产的浏览器兼容性问题 1.ls两位,设定了width还是没用.2.总结了一下就是,里面的标签漂浮以后,就不能撑起外层的容器了. 3.li要设至少一个宽度或高度,还要加上ove ...
- 使用Spire PDF for .NET将HTML转换成PDF文档
目录 开发环境说明 Spire PDF for .NET (free edition)体验 资源下载 开发环境说明 Microsoft Visual Studio 2013 Ultimate Edit ...
- 浅谈HtmlParser
使用Heritrix抓取到自己所需的网页后,还需要对网页中的内容进行分类等操作,这个时候就需要用到htmlparser,但是使用htmlparser并不是那么容易!因为相关的文档比较少,很多更能需要开 ...
- iOS keyChain(钥匙串)的简单使用
通常在开发中我们需要长久的保存某些值比如用户的账号密码等,对于隐私度很高的数据来说保证数据的安全性是尤为重要的.ios中的keyChain是一种很好的选择. 首先去开发者网站(https://deve ...
- textContent和innerHtml
textContent,innerText, 查询或者设置元素的文本内容. textContent如,html: <p>test gogo</p> javascript中: v ...
- Hibernate session.saveOrUpdate()方法
saveOrUpdate()方法同时包含了save()与update()方法的功能, 如果传入的参数是临时对象,就调用save()方法: 如果传入的参数是游离对象,就调用update()方法: 如果传 ...
- Problem F: Exponentiation大数求幂
DescriptionProblems involving the computation of exact values of very large magnitude and precision ...
- JS中小数的差,比较大小
var a = 0.3-0.2; -0.3; alert(a + "&" + b); if (a == b) { alert("true"); } el ...