Python re.sub 问题

埃德尔谢尔

我正在尝试使用re.sub将文本转换为时间来清理字符串我的初始字符串是"Durée : 1h30",我想删除"Durée : "并获取此输出:"1h30". 但是我目前的代码,输出字符串此列表:["D", "u", "r", "é", "e", " ", ":", " ", "1", "h", "3", "0"]

for href in response.xpath("//div[@class='item']/a[@class='roll-2']//@href"):
        url = "https://www.louvre.fr" + href.extract()
        yield scrapy.Request(url, callback=self.parse_dir_contents)

lenght = response.xpath("//tbody/tr/td/text()").extract()[1]  #lenght = "Durée : 1h30"

item['lenght'] = [re.sub("Durée : ", "", le) for le in lenght]
希迈尔

字符串在 Python 中是可迭代的,您在列表推导式中迭代每个字符并re.sub分别在这些字符中运行

此外,您在这里不需要正则表达式。使用str.replace

item['length'] = [length.replace('Durée : ', '')]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章