python 中 re.sub 和 re.compile 是啥意思?

在python中re是一个常用的模块,主要是通过正则表达式进行字符串处理。它的速度相对自己用 find, replace, split来说,通常更快。当然功能更强大。

正则表达式也是一种语言,所以如果通过re.compile把它编译成对象,会速度快很多。所以我们经常看到这样的语句:

exp = re.compile("\S+")
m = exp.search(bigtext)
print m.group(0)
这段话等同于
m= re.search("\S+", bigtext)
print m.group(0)

re.sub则相当于字符串操作中的replace,比如
sometext = re.sub("(?isu)\r\n", “\n”, sometext)
上面这句话是将回车换行,变成换行。这是为了将windows下的文本文件移到linux下,防止某些软件不兼容所做的处理。

简单的说re.sub是做字符串替换的, re.compile是将正则表达式编译成一个对象,加快速度,并重复使用。

你可能感兴趣的:(re.compile)