regex-exclude子字符串包含的字符数超过2“/&引用;

regex-exclude子字符串包含的字符数超过2“/&引用;,regex,regex-negation,regex-lookarounds,regex-group,Regex,Regex Negation,Regex Lookarounds,Regex Group,我有以下字符串的列表: /fajwe/conv_1/routing/apwfe/afjwepfj /fajwe/conv_2/routing/apwfe /fajwe/conv_2/routing /fajwe/conv_3/routing/apwfe/afjwepfj/awef /fajwe/conv_4/routing/apwfe/afjwepfj/awef/0o09 我希望正则表达式只匹配单词routing后包含不超过1个/的字符串。即/fajwe/conv_2/routing/apwf

我有以下字符串的列表:

/fajwe/conv_1/routing/apwfe/afjwepfj
/fajwe/conv_2/routing/apwfe
/fajwe/conv_2/routing
/fajwe/conv_3/routing/apwfe/afjwepfj/awef
/fajwe/conv_4/routing/apwfe/afjwepfj/awef/0o09
我希望正则表达式只匹配单词
routing
后包含不超过1个
/
的字符串。即
/fajwe/conv_2/routing/apwfe
/fajwe/conv_2/routing

目前我使用正则表达式
^((?!rou\w+(\/\w+{2,})。*$
,但它不匹配任何内容。如何编写正则表达式以排除在单词
routing
之后包含2个以上
/
的字符串

我很想学习如何使用反向查找来实现这一点。非常感谢

像这样的

^.*\/routing(\/[^\/]*){0,1}$
像这样的

^.*\/routing(\/[^\/]*){0,1}$

正如所指出的,您的正则表达式使用多行标志
m
匹配您要查找的内容

您也可以这样尝试:


根据您的语言环境,您可以使用所指出的多行标志
\/
来匹配您要查找的正则表达式

您也可以这样尝试:

根据您的语言背景,您可以
\/

好了

好了


这两个都匹配相同的东西
^.*\/routing(?:\/[^\/]*)?$
谢谢您的帮助!但是我在regex101上测试了它,它不起作用。您应该启用多行标志
m
@spacegoing@revo谢谢你的评论!它起作用了!您能告诉我如何使用负回溯来实现这一点吗?它们都匹配相同的东西
^.*\/routing(?:\/[^\/]*)?$
谢谢您的帮助!但是我在regex101上测试了它,它不起作用。您应该启用多行标志
m
@spacegoing@revo谢谢你的评论!它起作用了!你能告诉我如何使用负回溯来实现这一点吗?是的,结果我忘记了
m
标志。非常感谢!是的,结果是我忘记了
m
标志。非常感谢!为什么不使用简单的正则表达式呢