我需要在第二次出现“-”字符之前拆分文本。我现在所拥有的是产生不一致的结果。我尝试了 rsplit
的各种组合,通读并尝试了其他解决方案,但没有结果。
要拆分的示例文件名: 'some-sample-filename-to-split'
在 data.filename
--- 中返回。在这种情况下,我只想返回 'some-sample'
。
fname, extname = os.path.splitext(data.filename)
file_label = fname.rsplit('/',1)[-1]
file_label2 = file_label.rsplit('-',maxsplit=3)
print(file_label2,'\n','---------------','\n')
原文由 DBS 发布,翻译遵循 CC BY-SA 4.0 许可协议
你可以这样做:
a.split("-", 2)
将字符串拆分为第二次出现-
。a.split("-", 2)[:2]
将给出列表中的前 2 个元素。然后简单地加入前 2 个元素。或者
您可以使用正则表达式:
^([\w]+-[\w]+)
编辑: 正如评论中所讨论的,这是您需要的: