我需要從 keys 中刪除 string 中的引號。這是一個代碼:import remystr = '["key": val, "key2": val, "key3": v, "key5": 34, "key6": "ef"]'key_pattern = "(\"(?P<key>\w+)\": )"pattern = re.compile(key_pattern)print(re.sub(pattern, "\key", mystr))這是行不通的。我需要得到結果:mystr = '[key: val, key2: val, key3: v, key5: 34, key6: "ef"]'
1 回答

猛跑小豬
TA貢獻1858條經驗 獲得超8個贊
您可以使用
"(\w+)"(?=:)
請參閱正則表達式演示。細節:
"
- 一個"
字符(\w+)
- 第 1 組:一個或多個字母、數字、_
"
- 一個"
字符(?=:)
- 下一個字符必須是:
請參閱Python 演示:
import re
mystr = '["key": val, "key2": val, "key3": v, "key5": 34, "key6": "ef"]'
key_pattern = '"(\w+)"(?=:)'
print(re.sub(key_pattern, r"\1", mystr))
# => [key: val, key2: val, key3: v, key5: 34, key6: "ef"]
添加回答
舉報
0/150
提交
取消