python - 在正则表达式python中的特定字符串之后提取连续字符串
问题描述
我在 pandas 数据框中有一列,其中包含不完整的 JSON 数组,如数据。例如,该列的第一行类似于[{"name":"A","type":"Food","service":"xyz_abc"},{"name":"B","type":"饮料","服务":"pqr_ghi"},{"name":"C","type"
我想提取数据服务后给出的值xyz_abc和pqr_ghi。如何在 python 中使用正则表达式来做到这一点?
解决方案
import re
df['service'] = df['col'].apply(lambda x: re.findall(r'(?<=service")\s*:\s*"(.+?)"', x))
print(df)
col service
0 [{"name":"A","type":"Food","service":"xyz_abc"... [xyz_abc, pqr_ghi]
推荐阅读
- installation - 在 dpkg 软件包安装期间输出自定义消息
- java - Gradle 构建旧版代码
- floating-point - 极端浮点数
- c++ - 在某些情况下指针的地址是否会改变
- node.js - 动态对象键不适用于 grunt babel
- ms-word - 是否存在 Office Open XML 检查器工具?
- sql - 重命名属性 - Cloudera
- c++ - 将 kleene 运算符解析为一组备选方案,适配器?有精神 x3
- java - 按对象之一对数组列表中的对象进行排序
- python - “ImportError:无法从 PyQt5 导入名称 QtCore”或任何其他模块