1
假设我的文件包含像'STARTabcdEND'
这样的字符串,我应该如何在Python中提取文件中'START'
和'END'
之间找到的所有字符串?如何获得特定标记之间的子串?
假设我的文件包含像'STARTabcdEND'
这样的字符串,我应该如何在Python中提取文件中'START'
和'END'
之间找到的所有字符串?如何获得特定标记之间的子串?
import re
s = 'STARTabcdENDefSTARTghiEND'
a = 'START'
b = 'END'
out = re.findall(a+'(.+?)'+b, s)
# out: ['abcd', 'ghi']
这里,这将是做
s = 'STARTabcdEND'
s.partition('START')[2].rpartition('END')[0]
我更新了我的问题的一种方式。对不起,第一次不清楚。 – 2011-12-27 15:53:50
@PaulManta - 更新了我的答案 – eumiro 2011-12-27 15:58:40
一般来说'a,b = map(re.escape,[a,b])'可能会有用。 – jfs 2011-12-27 16:17:12