【发布时间】:2021-06-25 02:52:48
【问题描述】:
我有这个字符串,我想删除有两个小数位和三个小数位的数字,但是,对于包含两个小数位的数字,我不想删除字符串中的前两个数字,这是我的代码。
import re
string = "air max 12 x clot infantil 16 26 67 80 272 117 160"
regex = re.sub(r"\d{3}", "", string)
print(regex)
请注意,我可以消除小数点后 3 位的数字,但不能消除小数点后两位的数字。即使我的代码是这样的:
import re
string = "air max 12 x clot infantil 16 26 67 80 272 117 160"
regex = re.sub(r"\d{2,3}", "", string)
print(regex)
这行得通,问题是它会删除前两个小数点后两位的数字,我想要的输出是:
import re
string = "air max 12 x clot infantil 16 26 67 80 272 117 160"
regex = re.sub(r"\d{2,3}", "", string)
//something here
print(regex)
Expected output
air max 12 x clot infantil
如何使用正则表达式来做到这一点?
【问题讨论】:
-
在您的示例中,数字字符串中没有小数位,您的意思是长度为 2 还是 3?
-
你是对的,我在小数位方面是错误的,但我想我或多或少可以理解这个问题,如果我不能编辑
-
@etch_45 是的,我是认真的
标签: python python-3.x python-2.7