正则表达式简单总结

1 几种简单的正则:

. 匹配任意字符(换行符除外)

* 匹配前一个字符0次或者无限次

?匹配前一个字符0次或1次

.*贪婪算法

.*?非贪婪算法

() 将括号的内容返回

2. 重用方法:
findall 匹配所有满足规律的内容,并返回一个列表

seach 匹配并提取第一个符合规律的内容并返回一个正则表达式的对象

sub 替换符合规律的内容,并返回替换后的值

简单的练习代码:

1 import re
 2 # . 
 3 string = ‘aawaafgfdaashiaavcvcvaatianaavcvcvcaacaiaacxcx‘
 4 a=‘xy123‘
 5 b=re.findall(‘x.‘,a)
 6 print b
 7 
 8 # *
 9 a=‘xyxy123‘
10 b=re.findall(‘x*‘,a)
11 print b
12 
13 #..............
14 
15 res=re.findall(‘aa(.*?)aa‘,string)
16 for i in res:
17     print i

3. re.S

默认情况下模式串是包含换行符的,要想去掉换行符可以采用re.S

使用以下代码作比较

string = """aaw
                aafgfdaashiaavcvcvaatianaavcvcvcaacaiaacxcx"""

res=re.findall(‘aa(.*?)aa‘,string)
for i in res:
    print i

res=re.findall(‘aa(.*?)aa‘,string,re.S)
for i in res:

print i

时间: 2024-10-06 10:32:05

正则表达式简单总结的相关文章

正则表达式简单入门

 正则表达式简单入门    正则表达式在平常编程中有着大量的应用,对于任何一个想学习编程的人来说,正则表达式是一个必须掌握的知识. 废话不多说,下面先对正则表达式做一个简单的入门介绍,在后续的文章中,将会进行详细的介绍.    一.元字符 元字符一共有12个:$ ( ) [ { ? + * . ^ \ | 元字符有特殊的含义,如果要使用其字面值,则必须对其进行转义. 如: \$  \*  \( 等等 二.控制字符或不可打印字符 \a  警报 \e  退出 \f  换页 \n  换行 \r 

正则表达式--简单记忆二

全部符号解释 字符 描述 \ 将下一个字符标记为一个特殊字符.或一个原义字符.或一个 向后引用.或一个八进制转义符.例如,'n' 匹配字符 "n".'\n' 匹配一个换行符.序列 '\\' 匹配 "\" 而 "\(" 则匹配 "(". ^ 匹配输入字符串的开始位置.如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或 '\r' 之后的位置. $ 匹配输入字符串的结束位置.如果设置了RegExp

正则表达式--简单记忆

许多程序语言都支持利用正则表达式进行字符串的匹配操作,对正则表达式一直有点模糊,在这里记下来,备后来回顾 "." 代表任何一个字符 "\\d" 代表0至9的任何数字 "\\D" 代表任何一个非数字字符 "\\s" 代表空格字符 "\\S" 代表非空格类字符 "\\w" 代表可用于标识符的字符 使用一对方括号括起若干字符,代表方括号中的任何一个字符 [abc] 代表a b c 中的任何一个

正则表达式简单使用

正则表达式: 正则表达式,又称正规表示法.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串.在很多文本编辑器里,正则表达式通常被用来检索.替换那些符合某个模式的文本.(百度百科) API:http://tool.oschina.net/uploads/apidocs/jdk-zh/java/util/regex/Pattern.html 作用:用于专门

正则表达式 简单入门

本文旨在介绍正则表达式最最基础的部分便于不知道的读者对正则表达式产生一个概念,科普一下(不一定能入门). 什么是正则表达式? 正则表达式,就是用来描述一个字符串结构的方法,和我们使用的通配符比较类似,但是又不一样,可以说更强大.正则表达式主要用来在字符串中搜索.替换.定位文本. 正则表达式可以干什么? 前面提到正则表达式能用来搜索和替换,我们就想到了文本编辑器.确实,目前很多文本编辑器都集成了正则表达式搜索匹配和替换的功能,比如常用的Notepad++ 有了正则表达式,我们可以很方便地实现一些功

正则表达式简单记录

下面是一个更复杂的表达式:\(?0\d{2}[) -]?\d{8}. 这个表达式可以匹配几种格式的电话号码,像(010)88886666,或022-22334455,或02912345678等.我们对它进行一些分析吧:首先是一个转义字符\(,它能出现0次或1次(?),然后是一个0,后面跟着2个数字(\d{2}),然后是)或-或空格中的一个,它出现1次或不出现(?),最后是8个数字(\d{8}). (\d{1,3}\.){3}\d{1,3}是一个简单的IP地址匹配表达式.要理解这个表达式,请按下列

正则表达式 简单介绍

一.正则表达式基本介绍: 实际应用中,经常需要按照某些规则去操作字符串,正则表达式恰好是制定这些规则的利器. 正则表达的英文全程是regular expression,正如它的名字,可以将它分为两个部分来理解: (1).第一部分是规则(regular),用来约束各个字符的语义.例如点(.)可以表示任意一个字符,星号(*)可以表示零个或者多个字符,或者\d表示一个数字等. (2).第二部分是表达式(expression),是由字符组成的字符串(实质就是由一个个单独的规则,组成一个总体匹配规则),用

正则表达式简单了解

1 什么叫正则表达式 一个表达式,以特定的规则来匹配字符串 也叫规则表达式 作用: 用来验证特定的字符串 如何使用正则表达式 2.1 构造函数的方式 new RegExp(pattern,[flag]) patten     :   正则表达式,可选 flag         :      匹配模式,可选 //匹配某个字符串中出现一次a //可匹配:"456a" "aabb" "bac" var reg = new RegExp(/a/); 匹配

C#正则表达式简单案例解析

正则表达式主要用于字符串的操作. 1.Regex.IsMatch:判断指定的字符串是否符合正则表达式. 2.Regex.Match:提取匹配的字符串,只能提取到第一个符合的字符串.这里还可以使用组来提取. 通过括号为正则表达式分组,这样在提取时就能获取到组的信息.返回的类型是Match,通过Value拿到值. 组信息是通过索引区分的,其中0表示整个匹配的字符,1表示第一个括号内的字符. string sss = Regex.Match("", "a(.)d").Gr