Regex 匹配键值对的正则表达式

Regex 匹配键值对的正则表达式,regex,Regex,我需要得到结果: 重量:约17磅 颜色:黑色 负载能力:263磅 测试:120-150千克(263-330磅)动态 etc 来自字符串: 重量:约17磅颜色:黑色负载能力:263磅测试:120-150千克(263-330磅)动态外形尺寸:22.5英寸x 21.5英寸x 35“-39”(长x宽x高)靠背尺寸:17.5英寸x 19英寸座椅尺寸:17.5英寸x 17.5英寸可调座椅:18“-22” 我只有钥匙,正则表达式: [A-Z][A-Z]*(\s[A-Z]*)*[:] 我已经捕获并分组了关键值

我需要得到结果:
重量:约17磅
颜色:黑色
负载能力:263磅
测试:120-150千克(263-330磅)动态
etc
来自字符串:
重量:约17磅颜色:黑色负载能力:263磅测试:120-150千克(263-330磅)动态外形尺寸:22.5英寸x 21.5英寸x 35“-39”(长x宽x高)靠背尺寸:17.5英寸x 19英寸座椅尺寸:17.5英寸x 17.5英寸可调座椅:18“-22”
我只有钥匙,正则表达式:
[A-Z][A-Z]*(\s[A-Z]*)*[:]


我已经捕获并分组了关键值

([A-Z][a-z]+(?:\s+[a-z]+)*)[:]\s*(\S+.*?(?=[A-Z][a-z]+|$))

检查此链接:

您如何知道一对的停止位置和另一对的开始位置?[大写单词][:][另一个大写单词之前的内容:]更多信息会有所帮助,这些属性是否总是按相同的顺序排列?你已经试过了吗?请分享你迄今为止所做的工作,以便人们更好地了解这个问题。“About”和“Black”都是大写的词。假设我们允许值的第一个字符是大写,那么“总体尺寸:22.5”x21.5”x35“-39”(长x宽x高)呢?L现在应该开始一个新的键,这样您就可以得到第一个键值对
外形尺寸
+
22.5英寸x21.5英寸x35“-39”(
下一个
L x W x H)靠背尺寸
+
17.5英寸x19英寸
非常感谢!