首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >随机序列元素的Regex匹配组

随机序列元素的Regex匹配组
EN

Stack Overflow用户
提问于 2020-12-01 10:31:59
回答 1查看 344关注 0票数 2

为了简单起见,假设我有以下文字字符串:

代码语言:javascript
运行
复制
abc[4;?;z;*]def

其中4,?,z和*可以以随机顺序出现,由a;分隔,并且是我事先知道的字符(或字符串)。

我有一个正则表达式,它使用‘或’组来匹配字符串:

代码语言:javascript
运行
复制
abc\[(?:z|\*|4|\?|\;)+\]def

问题是,如果字符串中缺少一个元素,那么仍然是匹配的,我想检查是否所有元素都存在:

代码语言:javascript
运行
复制
abc[?;z;*]def

抓捕组对我来说是无关紧要的。我只想确认整个字符串。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-01 11:33:19

您可以使用

代码语言:javascript
运行
复制
abc\[(?=[^][]*z)(?=[^][]*4)(?=[^][]*\?)(?=[^][]*;)(?=[^][]*\*)[z*4?;]+]def

regex演示。详细信息:

  • abc\[ -一个文字abc[字符串
  • (?=[^][]*z) -在除[]之外的零或多个字符之后,必须有一个z
  • (?=[^][]*4) -在除[]之外的零或多个字符之后,必须有一个4
  • (?=[^][]*\?) -在除[]之外的零或多个字符之后,必须有一个?
  • (?=[^][]*;) -在除[]之外的零或多个字符之后,必须有一个;
  • (?=[^][]*\*) -在除[]之外的零或多个字符之后,必须有一个*
  • [z*4?;]+ -集合中的一个或多个字符,z*4?;
  • ]def -一个文字]def字符串。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65088825

复制
相关文章

相似问题

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