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

Google Spreadsheet中提取特定关键词旁数值的方法咨询

从Google Sheets单元格提取特定字段值的解决方案

针对你在单个单元格中输入的字符串TIME200629 SYNC-7 CPU13.6,我提供两种思路的解决方案:不修改原始格式直接提取,以及修改原始格式简化操作。

一、不修改原始格式的函数公式

假设原始数据在A126单元格,目标分别是C126(日期)、D126(SYNC值)、E126(CPU值):

1. 提取TIME对应的日期(C126)

原始字符串中TIME后跟的是YYMMDD格式的日期,我们需要提取后转换为标准的YYYY-MM-DD日期格式:

=DATEVALUE(REGEXREPLACE(REGEXEXTRACT(A126,"TIME(\d{6})"),"(\d{2})(\d{2})(\d{2})","20$1-$2-$3"))
  • 解释:先用REGEXEXTRACT提取TIME后的6位数字,再用REGEXREPLACE把200629重组为2020-06-29,最后用DATEVALUE转换为可识别的日期格式。如果需要添加固定时间(比如你的例子中的10:41:02),可以改成:
=DATEVALUE(REGEXREPLACE(REGEXEXTRACT(A126,"TIME(\d{6})"),"(\d{2})(\d{2})(\d{2})","20$1-$2-$3")) + TIME(10,41,2)

2. 提取SYNC对应的数值(D126)

提取SYNC后的带符号数值:

=VALUE(REGEXEXTRACT(A126,"SYNC([-+]?\d+)"))
  • 解释:REGEXEXTRACT匹配SYNC后跟随的正负整数,VALUE把提取到的文本转换为数值格式。如果SYNC值可能包含小数,把正则改成SYNC([-+]?\d+\.?\d*)即可。

3. 提取CPU对应的数值(E126)

提取CPU后的小数数值:

=VALUE(REGEXEXTRACT(A126,"CPU([\d\.]+)"))
  • 解释:匹配CPU后跟随的数字和小数点组合,同样用VALUE转为数值格式。如果需要支持正负值,正则调整为CPU([-+]?\d+\.?\d*)。

二、修改原始格式简化操作

如果可以调整原始数据的输入格式,建议给字段和值之间添加分隔符(比如空格或冒号),比如把输入改为:

TIME 200629 SYNC -7 CPU 13.6

或者更清晰的:

TIME:200629 SYNC:-7 CPU:13.6

这种情况下,提取会更简单:

  • 对于TIME:200629格式,日期提取公式简化为:
=DATEVALUE(REGEXREPLACE(REGEXEXTRACT(A126,"TIME:(\d{6})"),"(\d{2})(\d{2})(\d{2})","20$1-$2-$3"))
  • SYNC值和CPU值的提取也更不容易出错,比如:
=VALUE(REGEXEXTRACT(A126,"SYNC:([-+]?\d+)"))
=VALUE(REGEXEXTRACT(A126,"CPU:([\d\.]+)"))

如果用空格分隔的TIME 200629格式,还可以用SPLIT函数拆分后直接取值:

=SPLIT(A126," ")

拆分后会得到一个数组,直接引用对应位置的元素即可(比如第2个元素是日期字符串,第4个是SYNC值)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.08 11:02:45