我一直在尝试使用正则表达式删除字符串的一部分。
Heroes Chapter 91 - Rescue
我需要删除“ Chapter -number-”之后的所有内容,不能删除“-”之后的所有内容,因为我不确定标题是否总是“ Heroes”,因此,如果标题为“ -New- Spiderman” ”,它将删除错误的部分。“-”也一样,如果删除“-”之后的所有内容,则可能会删除错误的部分。它必须是“ Chapter -number-”。我不知道我是否解释得很好。
但是,我尝试这样做:
title = "Heroes Chapter 91 - Rescue"
title = re.sub('Chapter \d+ (\D+)', '', title)
但它返回Heroes
。
title = "Heroes Chapter 91 - Rescue"
title = re.sub('Chapter (\d+).*', '', title)
但它Heroes
再次返回。
有任何想法吗?
PD:有人将我联系到这个问题,但我在那儿找不到解决方案,如果有人看到了,请指出。我显然不是专家:)
最终解决方案:
title = "Heroes Chapter 91 - Rescue"
title = re.sub('(Chapter \d+).*', '\\1', title)
您可以( )
在此处使用捕获组,并在替换中引用捕获组。
>>> re.sub('(Chapter \d+).*', '\\1', title)
'Heroes Chapter 91'
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句