gpt4 book ai didi

regex - 如果存在于 Google 电子表格中的单元格中,则提取多个值

转载 作者:行者123 更新时间:2023-12-02 20:43:04 25 4
gpt4 key购买 nike

使用谷歌 re2 https://github.com/google/re2/blob/master/doc/syntax.txt

像这样的几行

  1. I love Rock
  2. I love Rock and scissors
  3. I hate paper
  4. I like Rock, paper and scissors
  5. I'd love myself

我想从每一行中提取“Rock”、“paper”和“scissors”。我希望正则表达式匹配以上所有五行,并在找到东西的地方给我石头剪刀布。我主要在 Google 表格中使用它,但任何 Google re2 正则表达式都应该有所帮助。

我试过:

".*(([Rock]{0,4})).*"

".*(([Rock]{4})|([Rock]{0})).*"

=REGEXEXTRACT(A2,".*(石头{0,2}).*(纸{0,2}).*(剪刀{0,2}).*")

以及从任何行获取 Rock 的多个其他组合,如果存在...但是,它总是更喜欢零而不是四个...即使找到 Rock ,它也会返回空字符串。如果我用 {1} 替换 {0},即使找到了完整的 Rock,我也会得到“k”。

有什么想法吗?

最佳答案

我找到了一些 regex features目前在 Google 表格中不受支持。

请试试这个解决方法:

=ArrayFormula(IFERROR(REGEXREPLACE(A3,REGEXREPLACE(A3,"(Rock|paper|scissors)","(.*)"),{"$1","$2","$3"} )))


在第 1 步中,此公式为第 2 步生成正则表达式:

enter image description here

关于regex - 如果存在于 Google 电子表格中的单元格中,则提取多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45456630/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com