Python中的正则表达式 - 我的天地
Python中的正则表达式
简单的介绍一下正则表达式在python的用法。
正则表达式在python中作为一个模块存在,re模块,所以要想应用正则,先要import re模块:
import re
正则表达式本身是一段字符串,为了加速正则匹配的过程,要先将正则表达式“编译”成一个正则表达式对象(这里举例用“(\d+)\.(\d*)”,用来匹配像3.14159这样的表达小数的字符串,并包含了整数和小数部分的分组信息):
r=re.compile(r'(\d+)\.(\d*)')
r就是所谓的正则表达式对象了,正则是用来匹配字符串的,所以其中最重要的一个方法就是match(str),这个方法返回另一个对象,叫做MatchObject,其中包含了关于匹配的信息:
m=r.match("3.14159")
m就是所谓的MatchObject,其中最重要的方法就是group(n),返回分组匹配的字符串,group(1)就对应正则中的“\1”,group(2)就对应“\2”,依次类推,group(0)返回整个匹配字符串:
>>>m.group(0)
'3.14159'
>>>m.group(1)
'3'
>>>m.group(2)
'14159'
还有两个方法start(n)、end(n),返回分组n的开始和结束的位置:
>>>m.start(2)
2
>>>m.end(2)
7
上面就是匹配的基本用法,正则另外一个重要的应用就是替换,是用正则表达式对象的sub()方法来实现的:
>>>r.sub('4.\\2','3.14159')
'4.14159'
值得一提的是,如果只需要提取分组部分的内容,那么group(n)要比sub()快的多,比如我们要提取3.14159的小数部分,那么:
r.match("3.14159").group(2)
要比
r.sub('\\2','3.14159')
快上很多。
2010年5月26日 00:11
很有用 谢谢
2018年3月18日 05:42
هل تريد شركة لرش مبيد تحتاج شركة لرش المبيدات اليكم الحل <a href="https://www.nileriyadh.com/%d8%b4%d8%b1%d9%83%d8%a9-%d8%b1%d8%b4-%d9%85%d8%a8%d9%8a%d8%af%d8%a7%d8%aa-%d8%a8%d8%a7%d9%84%d8%b1%d9%8a%d8%a7%d8%b6/">شركة رش مبيدات بالرياض الصفرات </a>
<a href="https://www.nileriyadh.com/%d8%b4%d8%b1%d9%83%d8%a9-%d8%b1%d8%b4-%d8%af%d9%81%d8%a7%d9%86-%d8%a8%d8%a7%d9%84%d8%b1%d9%8a%d8%a7%d8%b6/">افضل شركة رش دفان بالرياض الصفرات</a>-<a href="https://www.nileriyadh.com/%d8%b4%d8%b1%d9%83%d8%a9-%d9%85%d9%83%d8%a7%d9%81%d8%ad%d8%a9-%d8%a7%d9%84%d9%86%d9%85%d9%84-%d8%a7%d9%84%d8%a7%d8%a8%d9%8a%d8%b6-%d8%a8%d8%a7%d9%84%d8%b1%d9%8a%d8%a7%d8%b6/">الصفرات لمكافحة النمل الابيض بالرياض</a>
تعانى من كثره الفئران فى بيتك او شركتك تريد التخلص من تلك الفئران الحل مع <a href="https://www.nileriyadh.com/%d8%b4%d8%b1%d9%83%d8%a9-%d9%85%d9%83%d8%a7%d9%81%d8%ad%d8%a9-%d9%81%d8%a6%d8%b1%d8%a7%d9%86-%d8%a8%d8%a7%d9%84%d8%b1%d9%8a%d8%a7%d8%b6/">شركة مكافحة الفئران بالرياض الصفرات</a>
<a href="https://www.nileriyadh.com/%d8%b4%d8%b1%d9%83%d8%a9-%d9%85%d9%83%d8%a7%d9%81%d8%ad%d8%a9-%d8%ad%d8%b4%d8%b1%d8%a7%d8%aa-%d8%a8%d8%a7%d9%84%d8%b1%d9%8a%d8%a7%d8%b6/">شركة مكافحة الصراصير بالرياض الصفرات</a>
<a href="https://www.nileriyadh.com/%d8%b4%d8%b1%d9%83%d8%a9-%d9%85%d9%83%d8%a7%d9%81%d8%ad%d8%a9-%d8%ad%d8%b4%d8%b1%d8%a7%d8%aa-%d8%a8%d8%a7%d9%84%d8%b1%d9%8a%d8%a7%d8%b6/">شركة مكافحة النمل الاسود بالرياض الصفرات</a>
<a href="https://www.nileriyadh.com/%d8%b4%d8%b1%d9%83%d8%a9-%d9%85%d9%83%d8%a7%d9%81%d8%ad%d8%a9-%d8%ad%d8%b4%d8%b1%d8%a7%d8%aa-%d8%a8%d8%a7%d9%84%d8%b1%d9%8a%d8%a7%d8%b6/">شركة مكافحة الناموس بالرياض الصفرات</a>
<a href="https://www.nileriyadh.com/%d8%b4%d8%b1%d9%83%d8%a9-%d9%85%d9%83%d8%a7%d9%81%d8%ad%d8%a9-%d8%ad%d8%b4%d8%b1%d8%a7%d8%aa-%d8%a8%d8%a7%d9%84%d8%b1%d9%8a%d8%a7%d8%b6/">شركة مكافحة الهاموش بالرياض الصفرات</a>
<a href="https://www.nileriyadh.com/%d8%b4%d8%b1%d9%83%d8%a9-%d9%85%d9%83%d8%a7%d9%81%d8%ad%d8%a9-%d8%ad%d8%b4%d8%b1%d8%a7%d8%aa-%d8%a8%d8%a7%d9%84%d8%b1%d9%8a%d8%a7%d8%b6/">شركة الصفرات مكافحة الحشرات بالرياض</a>
<a href="https://www.nileriyadh.com/%d8%b4%d8%b1%d9%83%d8%a9-%d8%b1%d8%b4-%d9%85%d8%a8%d9%8a%d8%af%d8%a7%d8%aa-%d8%a8%d8%a7%d9%84%d8%ae%d8%b1%d8%ac/">شركة الصفرا لرش المبيدات بالخرج</a>