标签: python string arcmap
我在弧形图中有照片文件,文件名如下: image_name = (1-3#s)_(10#'s).jpg。例如:
image_name = (1-3#s)_(10#'s).jpg
1_1z1z1z1z1z.jpg 599_iiiiiiiiii.jpg
我想删除下划线(_)后面的6个字符,然后删除(.jpg)。例如,结果将是:
_
.jpg
1_1z1z 599_iiii
image_name.strip('jpg')将文件扩展名作为简单表达式删除,但我无法弄清楚如何在高级部分中创建组合字符串命令以适应第二个规则。
image_name.strip('jpg')
答案 0 :(得分:0)
您可以使用re.sub匹配.{6}后的前6个字符(任意6个字符_)并将其全部删除。然后还从结果中删除固定的.jpg:
re.sub
.{6}
>>> name = '123_1a2b3c4d5e.jpg' >>> re.sub('_.{6}', '_', name).replace('.jpg', '') '123_4d5e'
请注意,str.strip('jpg') 不是一种安全(或正确)方式来剥离jpg扩展名。 str.strip将删除给定字符的所有前导和尾随实例,例如:
str.strip('jpg')
jpg
str.strip
>>> 'jppj-test-jpg'.strip('jpg') '-test-'