如何将含逗号值的分割字符串转换为字典?
处理含逗号值的字符串转字典问题
针对包含带逗号值的键值对字符串,可通过正则表达式精准匹配每个键值对,避免误拆分值内的逗号。以下是Python实现方案:
代码实现
import re # 目标字符串 test4 = "versandkostenfrei=Ja,delivery_time=sofort lieferbar,instantly_deliverable=true,spannung=7,2 Volt" # 正则匹配模式:匹配key=value结构,value包含直到下一个key=前的所有内容 pattern = r'([^=,]+)=([^=]+?)(?=,[^=,]+=|$)' matches = re.findall(pattern, test4) # 转换为字典 result = dict(matches) # 输出结果 print(result)
代码说明
- 正则模式
([^=,]+):匹配键,确保键不包含=和,(符合键的定义) ([^=]+?):非贪婪匹配值,直到遇到后续的,key=结构或字符串结尾(?=,[^=,]+=|$):正向预查,用来确定值的结束边界,避免将值内的逗号误判为键值对分隔符
运行后输出结果:
{ 'versandkostenfrei': 'Ja', 'delivery_time': 'sofort lieferbar', 'instantly_deliverable': 'true', 'spannung': '7,2 Volt' }
内容的提问来源于stack exchange,提问作者Zettt
相关产品推荐
相关产品推荐

