我有一些由空格分隔的路径,但没有用\s/\s分隔,即:空间、斜线、空间
val1 / val2 val4 / val7关键字/ somevalue / bbb ccc / ddd eee / fff
当我找到关键字时,请注意:
(keyword / [^/\s]*)在上述匹配之后,唯一可接受的值可以是aaa / bbb和ccc / ddd,无论是订单还是重复。
例如,我应该找个匹配的
任何其他的组合都应该返回不匹配,例如:当有额外的‘元素’后关键字/ somevalue
(...)
我应该找个不配的。
有可能用正则表达式来实现它吗?我正试图用正则表达式来解决这个问题,但我坚持住了。
发布于 2018-11-21 20:47:41
让我们试试下面的正则表达式
keyword \/ \w+ ((?:aaa \/ bbb|ccc \/ ddd)(?: |$))+$其中:
keyword是您的固定关键字aaa,bbb,ccc和ddd才是真正需要匹配的aaa \/ bbb是第一对允许的夫妻,ccc \/ ddd是第二个(?: |$)检查一对夫妇后面是空空格还是行$的末尾。我必须强调,强烈建议使用编程语言进行提取。您应该拆分字符串并检查分区。
https://stackoverflow.com/questions/53420079
复制相似问题