2024-10-01 22:38:20 发布
网友
我的文件名是“Planning_Group_20180108.ind”。我只想把策划小组排除在外。文件名也可以类似于Soldto_20180108,在这种情况下,输出应该是Soldto。在
不使用regex的解决方案更可取,因为对于尚未使用regex的人来说,它更容易阅读
下面这些应该对你有用
s="Planning_Group_20180108.ind" '_'.join(s.split('_')[:-1])
这样您就可以创建一个列表,它是在_处拆分的字符串。用[:-1]删除最后一部分。'_'.join()将列表元素组合到结果列表中。在
_
[:-1]
'_'.join()
print("Planning_Group_20180108.ind".rsplit("_", 1)[0]) print("Soldto_20180108".rsplit("_", 1)[0])
rsplit允许您在检测到“U”时从末尾拆分X倍。在您的例子中,它将把它拆分成两个字符串的数组[“Planning_Group”,“20180108.ind”],您只需要获取第一个元素[0](http://python-reference.readthedocs.io/en/latest/docs/str/rsplit.html)
您可以使用re:
re
import re s = ["Planning_Group_20180108.ind", 'Soldto_20180108'] new_s = list(map(lambda x:re.findall('[a-zA-Z_]+(?=_\d)', x)[0], s))
输出:
下面这些应该对你有用
这样您就可以创建一个列表,它是在
_
处拆分的字符串。用[:-1]
删除最后一部分。'_'.join()
将列表元素组合到结果列表中。在rsplit允许您在检测到“U”时从末尾拆分X倍。在您的例子中,它将把它拆分成两个字符串的数组[“Planning_Group”,“20180108.ind”],您只需要获取第一个元素[0](http://python-reference.readthedocs.io/en/latest/docs/str/rsplit.html)
您可以使用
re
:输出:
^{pr2}$相关问题 更多 >
编程相关推荐