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

如何检查单元格内非空文本行是否以(Completed mm/dd/yy)结尾?

解决Google Sheets单元格多行文本结尾格式检查问题

需求说明

需要检查单元格内每一行非空文本是否以(Completed mm/dd/yy)格式的日期字符串结尾,单元格内文本行以**空行(两个换行符)**分隔。

正则表达式说明

匹配目标格式的正则为:

\(Completed \d{2}/\d{2}/\d{2}\)$

各部分含义:

  • \( 和 \):转义正则中的特殊字符,匹配实际的括号
  • Completed :匹配固定文本(注意末尾空格)
  • \d{2}:匹配00-99的两位数字,对应月份、日期、年份的两位格式
  • $:锚定到行的结尾,确保格式出现在文本最后

检查公式(整体验证)

假设目标单元格为A1,使用以下公式可直接返回整体检查结果:

=ARRAYFORMULA(
  LET(
    split_lines, SPLIT(A1, CHAR(10)&CHAR(10)),
    non_empty, FILTER(split_lines, TRIM(split_lines)<>""),
    results, REGEXMATCH(non_empty, "\(Completed \d{2}/\d{2}/\d{2}\)$"),
    IFERROR(IF(ALL(results), "所有非空行均符合要求", "存在不符合要求的行"), "无有效内容")
  )
)

公式逻辑:

  1. SPLIT(A1, CHAR(10)&CHAR(10)):按空行拆分单元格内容为数组
  2. FILTER(...):过滤拆分后得到的空行(处理首尾空行情况)
  3. REGEXMATCH(...):对每一行做格式匹配,返回布尔值数组
  4. ALL(results):判断所有行是否都符合要求,输出对应提示

逐行检查公式

如果需要查看每一行的检查结果,使用以下公式:

=ARRAYFORMULA(
  LET(
    split_lines, SPLIT(A1, CHAR(10)&CHAR(10)),
    non_empty, FILTER(split_lines, TRIM(split_lines)<>""),
    IF(REGEXMATCH(non_empty, "\(Completed \d{2}/\d{2}/\d{2}\)$"), "符合", "不符合")
  )
)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 07:13:12