【发布时间】:2021-08-24 18:07:06
【问题描述】:
考虑到我有以下字符串,
~m~90~m~{Somestringof length 90}~m~20~m~{Some string of len 20}~m~10~m~{Somestringof length 10}
需要将模式~m~\d~m~之间的字符串一一提取
我找到的一个解决方案类似于
my_pattern = re.compile("~m~\d+~m~")
data_arr = my_pattern.finditer(result)
if data_arr:
get the indexes of pattern and search in original string
这个解决方案不是最优的,我相信一定有更好的方法来做到这一点。
【问题讨论】:
-
@anubhava,这样做会打印模式本身而不是中间的字符串
-
@JvdV 让我试试,ti7 的答案中给出了类似的解决方案
-
re.split(pattern, text)可以。