我试图用Python提取文件的某一部分。文件名各不相同,因此我无法指定使用特定字符串的起始位置。在
文件名如下:
ABC1D2E34_**ABC12345-67-Q89**_ABC12345_6_7_Scoring.csv
粗体部分是我想抓住的。文件的开头都是不同的,文件的其余部分也会根据文件的存储位置而有所不同,所以我需要一种方法来获取字符串,而不必太具体。在
name = re.findall('_(\S*[-]\S*[-])_', list)
我试过使用上面的代码,可以得到ABC12345-67-。 然而,当我试图添加到最后一位时,我总是得到超过我需要的东西:ABC12345-67-Q89_ABC12345_6_7_7
似乎应该有一个简单的解决办法,但我还没有找到它,所以任何帮助,谢谢。在
这很简单,使用两个否定的字符集,第一个被锚定在字符串的开头:
印刷品:
^{pr2}$请注意,regex并不是实现这一目标的唯一解决方案,而且并非最佳解决方案。在
您可以使用
filename.split('_')[1]
,如下面的注释所述。在相关问题 更多 >
编程相关推荐