正则表达式 for python
Posted 这么神奇
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则表达式 for python相关的知识,希望对你有一定的参考价值。
正则表达式的几个步骤:
1. 用import re 导入正则表达式模块;
2. 用re.compile() 创建一个regex对象,最好使用原始字符串;即在字符串前加r;
3. 向regex对象的search() 中传入想查找的字符串。返回值为一个Match对象;
4. 调用Match对象的group() 方法,返回实际匹配文本字符串;
例子:寻找电话号码
1 import re 2 phoneNumRegex=re.compile(r‘d{3}-d{3}-d{4}‘) 3 mo=phoneNumRegex.search(‘My phone number is 333-333-2222.‘) 4 print(‘Number is :‘ + mo.group())
1. 利用括号进行分组;
1 import re 2 3 phoneNumRegex = re.compile(r‘d{3}-d{3}-d{4}‘) 4 mo = phoneNumRegex.search(‘My phone number is 333-333-2222.‘) 5 print(‘Number is :‘ + mo.group()) 6 7 phoneNumRegex = re.compile(r‘(d{3})-(d{3}-d{4})‘) # 使用括号,第一个括号内是第一组,第二个括号内是第二组; 8 mo = phoneNumRegex.search(‘My phone number is 333-333-2222.‘) 9 print(‘Number is :‘ + mo.group(0)) 10 print(‘Number is :‘ + mo.group()) # group()中传入0,或者不传入,则返回整个匹配文本 11 print(‘Area Number is :‘ + mo.group(1)) # group()中传入1,返回第一个括号内的匹配值; 12 print(‘Phone Number is :‘ + mo.group(2)) # group()中传入2,返回第一个括号内的匹配值; 13 print(mo.groups()) # 使用gourps() 一次返回所有括号内的匹配结果; 14 areaNum, ThoneNum = mo.groups() # 多重赋值技巧 15 print(areaNum, ThoneNum) 16 17 phoneNumRegex = re.compile(r‘((d{3}))-(d{3}-d{4})‘) # 当匹配值中有括号时,使用 ( 和 ) 进行转义; 18 mo = phoneNumRegex.search(‘My phone number is (333)-333-2222.‘) 19 print(‘Number is :‘ + mo.group())
以上是关于正则表达式 for python的主要内容,如果未能解决你的问题,请参考以下文章