我有一个类似于以下
的字符串circles_b2_test_20130206_rem01_toy.jpg
我希望它看起来像
circles_b2_test_20130206_toy.jpg
如何只删除“rem01”短语? rem之后的数字总是在变化,但我总是希望删除“rem”+2个字符。
答案 0 :(得分:3)
有点" hacky,"但如果 rem 之后总有2个数字
,那么这应该达到你所追求的目标str = "circles_b2_test_20130206_rem01_toy.jpg"
idx = str.index("rem")
new_str = str[:idx] + str[idx+6:]
答案 1 :(得分:2)
如果是rem +两个字符,那么您可以使用rem.{2}
。
如果它是rem +两位数,那么你可以使用rem\d{2}
。
请注意,如果您需要circles_b2_test_20130206_toy.jpg
,则需要查看_
前面的01
,您可以尝试:
import re
file = 'circles_b2_test_20130206_rem01_toy.jpg'
re.sub(r'rem\d{2}_?', '', file)
# 'circles_b2_test_20130206_toy.jpg'