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

如何从Google Sheets A列提取数据填充至B、C、D、E列?

Google Sheets 拆分A列数据到多列解决方案

问题根源

你之前用=REGEXEXTRACT(A2,"Mejladress: (.+)")提取邮箱失败,是因为正则里的.+属于贪婪匹配,会把Mejladress:后面的所有内容(包括 Company: Mad People)都一并提取,而非仅邮箱地址。

逐列提取公式(从第2行开始)

以下公式适配你给出的A列数据格式,直接对应填入目标列即可:

B列(提取Name)

=REGEXEXTRACT(A2,"Name: ([A-Za-z]+)")
  • 逻辑:精准匹配Name: 后的字母内容,直到下一个字段(LastName)的空格处停止。

C列(提取LastName)

=REGEXEXTRACT(A2,"LastName: ([A-Za-z]+)")
  • 逻辑:同Name提取规则,匹配LastName: 后的字母内容。

D列(提取邮箱地址)

=REGEXEXTRACT(A2,"Mejladress: ([A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,})")
  • 逻辑:用标准邮箱正则规则匹配,彻底避免贪婪匹配带来的多余内容;如果你的字段名是拼写失误(比如应为Email),直接替换公式里的Mejladress即可。

E列(提取Company)

=REGEXEXTRACT(A2,"Company: (.+)")
  • 逻辑:因Company是最后一个字段,用.+直接匹配剩余所有内容即可。

批量填充方案(数组公式)

如果想一次性处理A列所有数据,在B2单元格输入以下数组公式,自动生成B、C、D、E列的所有内容:

=ARRAYFORMULA(IF(A2:A="",,{REGEXEXTRACT(A2:A,"Name: ([A-Za-z]+)"),REGEXEXTRACT(A2:A,"LastName: ([A-Za-z]+)"),REGEXEXTRACT(A2:A,"Mejladress: ([A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,})"),REGEXEXTRACT(A2:A,"Company: (.+)")}))

特殊情况适配

如果名字/姓氏包含空格(比如Name: Mary Ann),需要将对应公式调整为非贪婪匹配到下一个字段名前,例如Name的公式改为:

=REGEXEXTRACT(A2,"Name: (.+?) LastName")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 18:24:26