首页 > 技术文章 > 正则表达式r和re

jyfootprint 2018-08-08 10:15 原文

# coding:utf-8


import re

print 'a\ws'
print r'a\nb'

# r'': 一般用在正则表达式中,称为原始字符串,作用是将Python语法中的反斜杠转义给
取消,将其设置成为一个普通的字符串。可以解决Python中的转义字符和正则表达式中的转义
字符之间的冲突问题。

# \b: Python中表示退格的作用;正则中表示匹配到一个单词的边界位置。

print '123\b456'

pattern = re.compile(r'\bword\b')
print re.search(pattern, 'abc word 123')

# re.S:作用就是将目标字符串中的换行符\n当做一个普通的zifu进行处理,让正则匹配的
时候,不再受到换行符的影响,将所有行的字符串看成一个整体进行匹配。

# 目标字符串中有换行。
string = '''my name is
heihei your name is
haha
'''
pattern = re.compile(r'my(.*?)haha', re.S)
res = re.search(pattern, string)
print 'res = ',res.group(1)

# 默认情况下,正则表达式在进行search()或者match()匹配的时候,是按照整行内容进行匹
配的,如果在当前行没有匹配成功,则切换到下一行进行重新匹配。

转自:
正则表达式r和re - CSDN博客
https://blog.csdn.net/y15518325965/article/details/79405779

推荐阅读