首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如果子字符串已经匹配,则REGEX不匹配字符串

如果子字符串已经匹配,则REGEX不匹配字符串
EN

Stack Overflow用户
提问于 2022-09-21 16:59:35
回答 2查看 62关注 0票数 1

输入文本-

代码语言:javascript
运行
复制
hey, G Suite , ,Social Media Wall, Social Media Wall , ERP ERP Corecon

查询-

代码语言:javascript
运行
复制
((?<=[,-./\s])(ERP Corecon|Social Media|Social Media Wall|ROI|ERP)\b)

产出-

代码语言:javascript
运行
复制
hey, G Suite , ,**Social Media** Wall, **Social Media** Wall , **ERP** **ERP Corecon**

理想输出--社会媒体与社会媒体墙的匹配

regex链接- https://regexr.com/6ugr5

EN

回答 2

Stack Overflow用户

发布于 2022-09-21 17:25:41

您可能可以使用此正则表达式:

代码语言:javascript
运行
复制
(?<=[,-./\s])(ERP(?: Corecon)?|Social Media(?: Wall)?|ROI)\b

RegEx演示

RegEx分手:

  • (?<=[,-./\s]):在当前职位之前向后看是否存在这些字符
  • (;启动捕获组
    • ERP(?: Corecon)?:匹配ERPERP Corecon
    • |:或
    • Social Media(?: Wall)?:匹配Social MediaSocial Media Wall
    • |:或
    • ROI:Match ROI

  • ):终端捕获组
  • \b:字界
票数 1
EN

Stack Overflow用户

发布于 2022-09-21 20:25:18

您可以尝试使用命名组:

代码语言:javascript
运行
复制
(?<SocialMediaWall>(?<SocialMedia>Social Media)( Wall)?)|(?<ERPCore>(?<ERP>ERP)( Corecon)?)|(?<ROI>ROI)

如您所见,SocialMedia组嵌套在SocialMediaWall组中。这是一种同时获得两种价值的方法。

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

https://stackoverflow.com/questions/73804481

复制
相关文章

相似问题

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