我正在尝试提取文件名的特定部分,该部分可以有不同数量的'\。我以前使用partition/rpartition去除下划线条前后的所有内容,但我没有考虑不同下划线条编号的可能性
代码的目的是提取下划线条之间的特定字符
filename = os.path.basename(files).partition('_')[2].rpartition('_')[0].rpartition('_')[0].rpartition('_')[0]
以上是我目前的代码。文件的典型名称如下所示:
P0_G12_190325184517_t20190325_5
或者它也可以有
P0_G12_190325184517_5
据我所知,我当前代码的rpartition需要与第一个文件中的下划线条数匹配,但显然相同的代码不适用于第二个文件
我想提取
G12
这个部分也可以像G1一样只有两个字符,所以上面的文件名类型可以有两到三个字符
您可以使用:
您可以使用
split
创建一个包含独立部分的列表,如下所示:或者可以使用regex:
https://regex101.com/r/jiUNLV/1
这样做:
相关问题 更多 >
编程相关推荐