正则表达式与 Google 表格中的项目完全匹配

问题描述 投票:0回答:1

我正在尝试使用 Google 表格中的 regexmatch 函数来匹配下面列表中粗体案例中的项目“hip hop”:

- atl 嘻哈、肮脏的南方说唱、嘻哈、流行说唱

- 嘻哈、肮脏的南方说唱、流行说唱

所以我所追求的基本上是独立的hip hop在逗号之间(或在字符串的开头或结尾) - 没有任何前缀或后缀。

这是我的公式,但它不匹配正确:

=REGEXMATCH(LIST,"(\\W|^)(,\\ship\\shop,)(\\W|$)") 
regex google-sheets-formula
1个回答
0
投票

你需要使用

=REGEXMATCH(LIST,"^(?:.*,\s*)?hip\shop(?:\s*,.*)?$") 

请参阅 正则表达式演示

请注意,

^
$
锚点的存在只是为了便于在外部站点上进行调试,因为
REGEXMATCH
无论如何都需要完整的字符串匹配。

详情

  • ^
    - 字符串的开头
  • (?:.*,\s*)?
    - 可选出现
    • .*
      - 除了换行符之外的任何零个或多个字符,尽可能多
    • ,
      - 逗号
    • \s*
      - 零个或多个空格
  • hip\shop
    -
    hip
    ,空格,
    hop
  • (?:\s*,.*)?
    - 可选出现零个或多个空格、逗号以及除换行符之外的任何零个或多个字符(尽可能多)
  • $
    - 字符串结尾。
© www.soinside.com 2019 - 2024. All rights reserved.