正则语法笔记-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 ...
随机推荐
- [置顶] android利用jni调用第三方库——第二篇——编写库android程序直接调用第三方库libhello.so
0:前言 1:本文主要作为丙方android公司的身份来写 2:作者有不对的地方,请指出,谢谢 [第一篇:android利用jni调用第三方库——编写库libhello.so] [第二篇:androi ...
- mongodb cpu 超过100%居高不下的原因分析过程
-- mongodb cpu is high, infomation as below: 1 the message in the http://10.100.1.11:28017/ as below ...
- Tcl学习之--语法|变量
[语法|变量] l 脚本.命令和单词 Tcl提供了大约100条命令.Tk提供了另外几十条,脚本包括一条或多条,通过换行符或分号分隔开. set a 12 set b 23 也能够写成一行: set a ...
- 1.Solution的Build、Rebuild和Clean
大家好,我是原文,这篇随笔是对原文的翻译以及自己的体会. 做程序员没追求的话是永远找不到女朋友的,当然有追求也找不到,这个先不提,好在有追求的时候我是充实而且开心的.现在我们的问题是,每天调试项目,在 ...
- angular的那些事
angular.js是什么 AngularJS 是一个 JavaScript 框架.它可通过 <script> 标签添加到 HTML 页面. AngularJS 通过 指令 扩展了 HTM ...
- Excel文件转换为html静态网页
Excel文件转换为html静态网页:右键另存为:
- PHP GUID的生成源码
<?php function guid(){ if (function_exists('com_create_guid')){ return com_create_guid(); }else{ ...
- ASP.NET MVC View向Controller传值方式总结
1:QueryString传值1)也可以使用new{}来为form的action增加querystring2)在controler里使用Request.QueryString["word&q ...
- CM 0313 Review
中午无聊看了贴吧,看到有人截图说CM有爱的故事.看到SE03CH13,觉得图有点印象,似乎我很是记得这一集.于是刚才看了一下,嗯,果然记得.是我头一次翻译美剧的时候,7年前. 剧情还可以吧,剧中的Ji ...
- Svn服务启动的两种方式
一.svn服务器启动 cmd命令行启动:vsvnserve -d –r 文档仓库路径 -d 后台执行 -r 版本库的根目录 二.Windows服务自动启动 利用xp.2000 以上的 ...