繁体   English   中英

Python regex re.sub:某事

[英]Python regex re.sub : something

我有一个这样的程序:

import re

x='aaaaaaaa;aa;aaa;aaa;aaaaaaaaaa;'
x=re.sub(';','.',x, re.IGNORECASE)

print x

但输出是这样的:

aaaaaaaa.aa.aaa;aaa;aaaaaaaaaa;

还有一些; 没有被a取代. ,为什么?

使用Python 2.6

更新 - 在Python 2.6中,您可以这样做:

>>> re.sub('(?i);','.',x)
'aaaaaaaa.aa.aaa.aaa.aaaaaaaaaa.'

适用于Python 2.7+和3.0+

re.IGNORECASE ,第三个参数实际上是count(要替换的数量), re.IGNORECASE只是一个整数,所以它使用它作为计数。

>>> re.sub(';','.',x, flags=re.IGNORECASE)
'aaaaaaaa.aa.aaa.aaa.aaaaaaaaaa.'

>>> re.IGNORECASE
2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM