首页 > 解决方案 > 在正则表达式python中的特定字符串之后提取连续字符串

问题描述

我在 pandas 数据框中有一列,其中包含不完整的 JSON 数组,如数据。例如,该列的第一行类似于[{"name":"A","type":"Food","service":"xyz_abc"},{"name":"B","type":"饮料","服务":"pqr_ghi"},{"name":"C","type"

我想提取数据服务后给出的值xyz_abcpqr_ghi。如何在 python 中使用正则表达式来做到这一点?

标签: pythonjsonpandas

解决方案


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]

推荐阅读