Google 表格中的正则表达式 AND 运算符

标签 regex google-sheets

您可以使用管道 | 来表示 OR,它在 Google 表格中工作正常。但我想要一个 AND 运算符,但在任何地方都找不到。 The closest post I found正在谈论 Java 应用程序,但它无法在 Google 表格上正常运行

我想检查字符串“equivalencia de estudo patrimonial”中是否存在字符串“equivalencia”和“patrimonial”。

我已经尝试过:

=regexmatch("equivalencia de estudo patrimonial";"(?:equivalencia)(?:patrimonial)")
=regexmatch("equivalencia de estudo patrimonial";"(?=equivalencia)(?=patrimonial)")
=regexmatch("equivalencia de estudo patrimonial";"/(equivalencia)(patrimonial)/")
=regexmatch("equivalencia de estudo patrimonial";"(equivalencia)(patrimonial)")

没有人工作。总是弄虚作假。

有人可以帮忙吗?

最佳答案

遗憾的是,为 Google 表格提供支持的 RE2 库不支持环视。

您可以做的是将 word1.*word2word2.*word1 的组合与正则表达式相匹配,例如

=REGEXMATCH("equivalencia de estudo patrimonial"; "equivalencia.*patrimonial|patrimonial.*equivalencia")

这里,equivalencia.*patrimonial|patrimonial.*equivalencia 匹配 equivalencia、一些 0+ 个字符、patrimonial 或 ( |) patrimonial.*equivalencia 匹配 patrimonial,然后是任何 0+ 个字符,然后是 equivalencia。由于两个单词之间有 .* 部分,效率不高。

另一个解决方案是使用 AND function并运行 REGEXMATCH 两次:

=AND(REGEXMATCH(A1;"equivalencia"); REGEXMATCH(A1; "patrimonial"))

关于Google 表格中的正则表达式 AND 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54835200/

相关文章:

正则表达式条件语句

google-apps-script - 自定义菜单 onOpen 不显示

javascript - 使用 GAS 从/向电子表格读取和写入时间值

javascript - 如何重新格式化对象中的数据。 (我如何使行成为键,其他列成为值)

regex - 在 Google Sheet 中提取 url 域根

regex - 有没有办法用相同数量的 X 个字符替换子字符串的长度?

c++ - 自定义类型的正则表达式

java - 使用 clojure 中的正则表达式实现简单的扫描器/分词器

php - PHP 正则表达式模式中需要额外的反斜杠

google-apps-script - 添加上面的新行时,如何获取范围的实际位置