python jsonpath =~用法
时间: 2023-08-07 09:06:34 浏览: 49
在 Python 中,使用 jsonpath 库可以对 JSON 数据进行搜索和提取。其中的 =~ 运算符表示正则表达式匹配。具体用法如下:
1. 导入 jsonpath 库
```python
import jsonpath
```
2. 获取 JSON 数据
```python
data = {
"name": "John",
"age": 30,
"cars": [
{
"make": "Ford",
"model": "Mustang",
"year": 1964
},
{
"make": "Tesla",
"model": "Model S",
"year": 2019
}
]
}
```
3. 使用 jsonpath 匹配数据
```python
# 搜索所有年份大于 2000 年的汽车型号
models = jsonpath.jsonpath(data, "$.cars[?(@.year > 2000)].model")
# 搜索所有名字以 "J" 开头的字段
names = jsonpath.jsonpath(data, "$[?(@.name =~ /^J/)]")
```
其中,$ 表示根节点,. 表示当前节点,[] 表示索引或过滤器,? 表示过滤器,@ 表示当前节点。正则表达式需要使用 =~ 运算符来匹配。