首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Google脚本- RegexExtract/RegexReplace多行内容

Google脚本- RegexExtract/RegexReplace多行内容
EN

Stack Overflow用户
提问于 2020-08-29 20:33:53
回答 1查看 205关注 0票数 1

上下文

  • 包含多行内容的列,需要从其中删除(替换)或提取数据。 原始内容。

image001.png image002.png 支付参考资料7304_18.6T8TIR.pdf https://mail.google.com/mail/u/0/#inbox/XXXXXXXXXXX 图像005.png image006.png 支付参考资料25258_07.2T8TES.pdf。 https://mail.google.com/mail/u/0/#inbox/YYYYYYYYY

内容并不总是与此顺序一致,并且项目的数量可能会有所不同。

我所需要的

  • 最后的结果也应该在一个单元格中,如 例如:

支付参考资料7304_18.6T8TIR.pdf 支付参考资料25258_07.2T8TES.pdf

它可以包含子弹,而不是问题,如果它最终在最后结果行的乞讨中结束。

到目前为止我拥有的

  • 通过使用:

=ArrayFormula(REGEXREPLACE(F3:F,".(?s)image.*.(png)",""))

  • 我得到:

支付参考资料7304_18.6T8TIR.pdf https://mail.google.com/mail/u/0/#inbox/XXXXXXXXXXX 支付参考资料25258_07.2T8TES.pdf。 https://mail.google.com/mail/u/0/#inbox/YYYYYYYYY

  • 如果我想替换“http.”在另一列中,基于我使用的第一次regex替换:

=ArrayFormula(REGEXREPLACE(G3:G,".(?s)http.*",""))

  • 没有什么不同的事
  • 如果我用:

=ArrayFormula(REGEXEXTRACT(G3:G,"(?s).*Pay.*|pay.*"))

  • 我得到的结果与第一次替换相同,留下了不想要的url。

是否有一种方法可以同时从一个单元格删除到另一个单元格(删除具有“图像”+ URL地址的行)--或者至少以尽可能少的操作次数--或者仅仅在google sheets中提取包含“支付”的所有行、单元格(每行,而不是从所有行到一个单元格)?

提前感谢

测试电子表格

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-29 23:32:00

  • 您希望实现以下转换。
代码语言:javascript
复制
- From

图片001.png图片002.png支付参考资料。7304_18.6T8TIR.pdf https://mail.google.com/mail/u/0/#inbox/XXXXXXXXXXX Image005 Ref Image006 Ref支付参考资料25258_07.2T8TES.pdf。https://mail.google.com/mail/u/0/#inbox/YYYYYYYYY

代码语言:javascript
复制
- To

支付参考文献。7304_18.6T8TIR.pdf支付参考文献。25258_07.2T8TES.pdf

  • 您希望将结果值放入一个单元格中。

模式1:

在这种模式中,它假定从● image###.pnghttps://mail.google.com/mail/u/0/#inbox/XXXXXXXXXXX的每个值都放在每个单元格中。

样本公式:

代码语言:javascript
复制
=ARRAYFORMULA(TEXTJOIN(CHAR(10),TRUE,IFERROR(REGEXEXTRACT(A1:A,"(Payment Ref[\s\w].+\.pdf)"))))

结果:

模式2:

在这种模式中,它假设从● image###.pnghttps://mail.google.com/mail/u/0/#inbox/XXXXXXXXXXX的所有值都放在一个单元格中。

样本公式:

代码语言:javascript
复制
=ARRAYFORMULA(TEXTJOIN(CHAR(10),TRUE,IFERROR(REGEXEXTRACT(A1:A,REGEXREPLACE(A1:A,"(Payment Ref[\s\w].+\.pdf)","($1)")))))

结果:

注意:

  • 在这两个示例公式中,每个值Payment Ref - Proc. 7304_18.6T8TIR.pdf都使用REGEXEXTRACT检索。并使用TEXTJOIN将这些值放入一个单元格中。

参考文献:

添加:

样本公式:

代码语言:javascript
复制
=ARRAYFORMULA(TRIM(REGEXREPLACE(B2:B,"(● | ● )?image[ \S\w]+\n|https.+\n?|\.\n","")))

结果:

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63651536

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档