You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用正则匹配pandas DataFrame列表列内容并新增匹配结果列

实现方案
  • 前置依赖:先安装pandas库,执行命令pip install pandas
  • 完整代码实现
import pandas as pd
import re
import ast

# 读取原始CSV
df = pd.read_csv("你的输入文件路径.csv")
# 将text列的字符串形式列表转换为真实列表
df["text"] = df["text"].apply(ast.literal_eval)

def extract_matched_content(sentence_list):
    text1_val = None
    text2_val = None
    for sent in sentence_list:
        # 匹配text1规则:包含Hello或world,仅保留第一个匹配结果
        if text1_val is None and re.search(r"Hello|world", sent):
            text1_val = sent
        # 匹配text2规则:包含Welcome或universe,仅保留第一个匹配结果
        if text2_val is None and re.search(r"Welcome|universe", sent):
            text2_val = sent
    return pd.Series([text1_val, text2_val])

# 生成新列
df[["text1", "text2"]] = df["text"].apply(extract_matched_content)

# 导出结果CSV,可根据需求调整输出路径
df["text"] = df["text"].apply(str)
df.to_csv("输出结果.csv", index=False, encoding="utf-8-sig")
  • 可调整说明
    • 如果需要忽略大小写匹配,可在re.search方法中添加flags=re.IGNORECASE参数即可
    • 如果同一行有多个符合规则的句子需要全部保留,可将text1_val、text2_val改为列表存储匹配结果,最终用逗号等分隔符拼接即可

内容的提问来源于stack exchange,提问作者Pavi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.12 10:18:03