繁体   English   中英

Python re sub替换单词重复

[英]Python re sub replace word duplication

re.sub(r'[\[\d\]]', 'foo', 'web scraping [2]')

我想用foo代替[any number] 但是输出变得奇怪。

它打印web scraping foofoofoo

为什么会这样呢?

谢谢

如果要替换方括号之间的所有数字,可以使用这种方式

>>> re.sub(r'\[\d+\]', 'foo', 'web scraping [2] [34] [567]')
'web scraping foo foo foo'

您还有一对方括号。 他们正在创建一个不需要的角色类。

这是修复正则表达式的方法:

>>> re.sub(r'\[\d\]', 'foo', 'web scraping [2]')
'web scraping foo'

请注意,这仅接受一位数字。 如果要接受多位数字,请将\\d替换为\\d+

暂无
暂无

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

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