我有一个字符串Job_Cluster_AK_Alaska_Yakutat_CDP.png
从上面的字符串中,我只想提取此单词Job_Cluster_AK_Alaska_
之后和.png
之前的单词。
所以基本上我想提取下划线分隔的第四个单词,直到.png之前的单词
我是regex的新手。
最后我只想要Yakutat_CDP
。
答案 0 :(得分:2)
即使没有正则表达式,您也可以这样做:
s = 'Job_Cluster_AK_Alaska_Yakutat_CDP.png'
print(s[len('Job_Cluster_AK_Alaska_'):-len('.png')])
本质上,我将子字符串从Job_Cluster_AK_Alaska_
之后立即开始,并在.png
之前结束。
也许正则表达式方法仍更具可读性和可维护性:
import re
m = re.match('Job_Cluster_AK_Alaska_(.*).png')
print(m[1])
答案 1 :(得分:2)
我认为您要的是这样的东西:
desired effect example:
input list = [0,0,0,0]
looplength = 20
result = [5,6,4,5]
sum(result) = looplength
actual example:
input list = [0,0,0,0]
looplength = 20
result = [5,6,6,5]
sum(result) =! looplength
修改
尝试避免使用正则表达式,因为它通常比字符串切片要慢得多