首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python替换部分字符串

python替换部分字符串
EN

Stack Overflow用户
提问于 2016-12-10 20:32:32
回答 2查看 1.3K关注 0票数 0

很简单的问题,但我似乎搞不明白。

以下代码:

代码语言:javascript
复制
import re
addr = '800 W NORTH AVE'
re.sub(r'([a-zA-Z]+)', 'W North A', addr)

因此,我得到了800 W北,A W北,A W北A,而不是800 W北A

我不明白我做错了什么。会很感激你的帮助。

谢谢

EN

回答 2

Stack Overflow用户

发布于 2016-12-10 20:34:47

您不匹配空格字符。这使得每个单词都被替换字符串替换。相反,你需要这样的东西:

代码语言:javascript
复制
re.sub(r'(([a-zA-Z]+\?)+)', 'W North A', addr)

这匹配一个或多个单词后面的一个或多个空格。

票数 2
EN

Stack Overflow用户

发布于 2016-12-11 01:04:06

正如user92454所说,您希望使用一个空格字符,即Python中的\s

如果您知道要替换的文本总是大写的,则可以使用模式\s([A-Z\s]+)。如果没有,可以使用\s([A-z\s]+) (小写为'z')。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41080023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档