首页 > 解决方案 > 在 python3 中使用 re.sub() 从字符串中删除除给定字母后面的数字之外的所有数字

问题描述

我知道如何使用删除字符串中的所有数字re.sub()。但我不知道如何从字符串中删除所有数字,除了一些特殊数字。

例如,假设我有以下字符串:

"On 11 December 2008, India entered the 3G arena"

我希望输出为:

"On December, India entered the 3G arena"

标签: pythonre

解决方案


您可以使用 aNegative Lookahead (?!...)来确保数字后面的内容不是您设置的字母

这是一个示例,其中所有数字后跟任何字符GJK都不受抑制的影响

import re

print(re.sub(r"\d(?![GJK])", "", "On 11 December 2008, India entered the 3G arena 1A 3J 5K"))
# On  December , India entered the 3G arena A 3J 5K

推荐阅读