我有以下字符串:
{\"Id\":\"135\",\"Type\":0}
Id字段中的数字会有所不同,但始终是一个不带逗号分隔符的整数。考虑到它是字符串数据类型而不是真正的“ XML”,我不确定如何从该字符串中获取该值。我在玩replace()函数,但是特殊字符使它变得比看起来所需的更加复杂。
是否可以将其转换为XML或可以直接引用Id值的方式?
也许使用正则表达式,例如
import re
txt = "{\"Id\":\"135\",\"Type\":0}"
x = re.search('"Id":"([0-9]+)"', txt)
if x:
print(x.group(1))
给予
135
这里假定ID是数字,并且至少由一位数字组成。
您所问的非正则表达式答案
[\"
是python中的转义序列。
因此,如果{\"Id\":\"135\",\"Type\":0}
是原始字符串,并且将其放入类似python的变量中,例如
a = '{\"Id\":\"135\",\"Type\":0}'
给予
>>> a
'{"Id":"135","Type":0}'
OR
如果上面的字符串是具有\"
的python字符串,请执行a.replace("\\","")
,它将为您提供不含\
的字符串。
现在只需将此字符串加载到字典和访问元素Id
中,如下所示。
import json
d = json.loads(a)
d['Id']
输出:
135