从JSON中提取包含父兄弟和子字符串的文本可以通过以下步骤实现:
in
操作符或find()
函数,或者使用正则表达式来匹配目标子字符串。以下是一个示例Python代码,演示如何从JSON中提取包含父兄弟和子字符串的文本:
import json
def extract_text_from_json(json_data, target_substring):
extracted_text = []
# 解析JSON数据
data = json.loads(json_data)
# 遍历JSON数据
def traverse(data, parent_key=''):
if isinstance(data, dict):
for key, value in data.items():
# 检查键是否包含目标子字符串
if target_substring in str(key):
extracted_text.append(key)
# 检查值是否包含目标子字符串
if target_substring in str(value):
extracted_text.append(value)
# 递归遍历子对象
traverse(value, parent_key=key)
elif isinstance(data, list):
for item in data:
# 递归遍历列表中的元素
traverse(item, parent_key)
traverse(data)
return extracted_text
# 示例JSON数据
json_data = '''
{
"name": "John",
"age": 30,
"siblings": ["Jane", "Bob"],
"address": {
"street": "123 Main St",
"city": "New York",
"country": "USA"
}
}
'''
# 提取包含父兄弟和子字符串的文本
target_substring = "ob"
result = extract_text_from_json(json_data, target_substring)
print(result)
运行以上代码,将输出包含目标子字符串"ob"的键和值:
['Bob', 'siblings']
在这个例子中,我们从JSON数据中提取了包含"ob"的文本,即"Bob"和"siblings"键。根据实际需求,你可以根据这个示例进行修改和扩展,以适应不同的JSON结构和提取要求。
领取专属 10元无门槛券
手把手带您无忧上云