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

如何在Sent列值为Yes时提取Message列字符串中的特定数值

列值提取需求实现方案

下面分三种常用工具场景给出可直接运行的实现方法:

  • Excel/WPS表格场景
    假设你的数据行从第2行开始,Message列为B列、Sent列为C列,在空白列输入以下公式下拉填充即可:
    =IF(C2="Yes",MID(B2,FIND("-Yes",B2)-3,3),"")
    后续筛选该列非空值,就能得到你要的155、045结果。
  • Python Pandas场景
    如果你是用Python处理数据表,用正则匹配提取即可,示例代码如下:
    import pandas as pd
    
    # 替换为你的数据表读取逻辑,比如read_csv/read_excel
    df = pd.DataFrame({
        "Bin": ["X343", "VFG33", "JH789", "1255"],
        "Message": ["Message is 333-Yes", "Content Value on 155-Yes", "Bring to Dock33 at 045-Yes", "Message is 768-Yes"],
        "Sent": ["No", "Yes", "Yes", "No"]
    })
    
    # 提取目标值
    res = df[df["Sent"] == "Yes"]["Message"].str.extract(r"(\d{3})-Yes")[0].tolist()
    # 输出结果为 ['155', '045']
    
  • SQL场景(以MySQL为例)
    如果数据存储在关系型数据库中,直接用字符串函数查询即可:
    SELECT SUBSTRING(Message, LOCATE('-Yes', Message) - 3, 3) AS target_num
    FROM 你的表名
    WHERE Sent = 'Yes';
    
    查询返回的结果就是你需要的155、045。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 10:15:03