如何从单元格的第 n 行中提取所有内容? (在工作表中使用正则提取)

How do I extract everything from the nth line in cell? (using regextract in sheets)

我的目标是 return 第 4 行之后的所有行(在某些单元格中我可能有 2 行以上,在其他单元格中有 3 行或更多)。我可以使用 (\n.*){4} 和一个 isna 函数,但在某些单元格中我可能有第 5 行或更多行我想提取(没有它 return 如果没有第 4 行或更多行会出错单元格中的第 5 行)。我试过插入 $ 以便它可以从字符串末尾获取所有内容,但不太清楚如何定位它。 see example

你可以试试:

B1中的公式:

=INDEX(IFERROR(REGEXEXTRACT(A1:A,"^(?:.*\n){4}((?:.*\n?)+)"),""))

表达式 ^(?:.*\n){4}((?:.*\n?)+ 匹配:

  • ^ - 起始行锚点。
  • (?:.*\n){4} - 除换行符外的 0+ 个字符后跟换行符恰好 4 次。
  • ((?:.*\n?)+ - 一个捕获组,其中包含遵循相同模式但可选换行符的所有剩余行。

由于是捕获组,REGEXEXTRACT()会return捕获该组中的子串,如果为空则报错;因此 IFERROR().