python-3.x - 删除数字,但如果它们是字符串的一部分,则不删除
问题描述
我想用 Python 删除文本中包含的数字。但我不想删除作为字符串一部分的数字。
例如,
strings = [ "There are 55 cars in 45trt avenue"
在这种情况下55
应该删除,但不是45trt
,应该保持不变
提前致谢,
解决方案
您可以尝试搜索被单词边界包围的数字:
inp = "There are 55 cars in 45trt avenue"
output = re.sub(r'\s*\b\d+\b\s*', ' ', inp).strip()
print(output)
这打印:
There are cars in 45trt avenue
这里的逻辑实际上是用一个空格替换,以确保生成的字符串仍然是正确间隔的。这为可能恰好出现在开头或结尾的数字打开了一个边缘案例,留下了额外的空间。为了解决这个问题,我们使用strip()
.
推荐阅读
- concurrency - 使用 8051 微控制器进行频率测量
- c++ - 循环逻辑将二维数组值存储在一个线性向量中
- python - Excel 模糊查找中使用的算法
- random - 在 LiveCode 中使用 random()
- azure - 为什么 IotHub 事件在存储在时序见解中时会延迟?
- list - 在最后一个元素处将列表一分为二,给出最后一个元素和一个剩余列表
- php - 在 docx 文件中上传错误,但能够以相同的代码上传 pdf
- laravel - 使用 laravel header() 方法发送 CSRF 令牌
- asp.net - 在 JMeter 中,在 Asp.net Web 应用程序中执行负载测试时,获取登录帖子请求的“对象已移至此处”响应
- php - PHP 从多个表中选择数据会引发错误