https://regex101.com/r/4aIVLr/4
15的min-sum:速率:proc.stat.cpu {主机= FOO,类型=空闲}
(?![\w-]*:)([\w\.]*)({.*}) creates two group
proc.stat.cpu
{主机= FOO,类型=空闲}
第2组和第3组来自 ^(\w\W*)*:(.*){(.*)}$ 会抓住 proc.stat.cpu 和选项分别。
^(\w\W*)*:(.*){(.*)}$
如果您的查询字符串格式完全相同,则可能会有效。
str = "15-min-sum:rate:proc.stat.cpu{host=foo,type=idle}" print(str[str.rfind(":")+1 : str.find("{")])