首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果模式匹配,则正则表达式

如果模式匹配,则正则表达式
EN

Stack Overflow用户
提问于 2022-01-04 03:50:37
回答 1查看 63关注 0票数 1

我有一个页面标题字符串,我想从其中获取一个子字符串(商标名),但是它并不总是出现在同一个位置。

书页标题:

  • 品牌名称:现在是一本书
  • 品牌名称B在此订购
  • 内容/品牌名称:现在就下订单
  • 内容-品牌名称7

期望产出:

  • 商标名称A
  • 商标名称B
  • 商标名称A
  • 品牌名称7

我可以使用(^[^|]+)从前两个中获取品牌名称,并使用\|(.*).*(?=\|)从第二个两个获取品牌名称--尽管它也捕获了这个值。

但是,当有一个管道时,我需要第一个正则表达式,当有两个管道时,我需要第二个正则表达式。有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-01-04 03:54:04

使用REGEXP_EXTRACT,我们可以尝试:

代码语言:javascript
复制
REGEXP_EXTRACT("Content | Brand Name A | Order now", "\\s*([^|]+?)\\s+\\|[^|]+$")

这是一个regex演示

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

https://stackoverflow.com/questions/70573910

复制
相关文章

相似问题

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