python - 如何使用正则表达式将字符串转换为 Json?
问题描述
我一直在试图弄清楚如何使用正则表达式将字符串转换为 json。
我试图抓取的是值items
并将其转换为 json:
{
'submitId': 'commodity-show-submit',
'params': [
[
'color',
'COLOUR'
],
[
'items',
'Select items'
]
],
'items': {
"48924": {
"params": [
"black",
"US 10"
]
},
"48925": {
"params": [
"black",
"US 10.5"
]
},
"48926": {
"params": [
"black",
"US 11"
]
}
},
'pids': [
48924,
],
'items': [
'Banana',
],
'cartId': '.common-cart',
'imgId': '',
'onInvalid': function(){
message("Please select a variant: %s.")
而且我对正则表达式的了解不多,但我试图挑战自己,我认为我完全不在这个区域。它确实只抓住了他们的第一个物品。
r"'items': (.+?)}"
基本上我要做的就是将此部分转换为 json
'items': {
"48924": {
"params": [
"black",
"US 10"
]
},
"48925": {
"params": [
"black",
"US 10.5"
]
},
"48926": {
"params": [
"black",
"US 11"
]
}
}
能够做到这一点的最好方法是什么?
解决方案
限制使用 Regex 清理字符串,然后将清理后的字符串放入json
. 请记住,JSON 规范使用双引号"
。
推荐阅读
- c++ - 我的程序运行时出错(运行时检查失败 #2 - 变量“userInput”周围的堆栈已损坏。)
- ios - 我想保存到 CORE DATA,但我不断收到“类 'Reminder' 的 NSManagedObject 必须具有有效的 NSEntityDescription。”
- javascript - 控制台错误 NodeJS 配置
- javascript - 使用循环使用此 javascript 获取结果时遇到问题
- ios - 在 iOS 上运行 TensorFlow 时出错
- android - 找不到 com.android.tools.build:aapt2:3.2.0
- java - 自动将对象中的所有实体引用转换为 Jersey 中的超链接
- laravel - 如何创建仅用于测试的 Laravel 路由(phpunit)?
- firebase - angularfire从firebase获得恒定值
- sql-server-2014 - 如何创建解析字段的查询