如果在最后一次出现特定字符后包含某些字符串,则正则表达式匹配

时间:2017-06-20 21:30:49

标签: regex

例如,我想检查网址是否包含' foo'在最后一次斜杠之后,匹配整个网址。所以以下网址应该匹配:

但以下不应该:

我的方法是((\\.*)*\\.*foo.*),但似乎对最后一个斜杠之前包含foo的任何网址都不起作用。这种模式在正则表达式中是否可行?或者我必须在代码中使用split(' \')来实现我想要的所需模式?

由于

1 个答案:

答案 0 :(得分:0)

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

^.*/[^/]*foo[^/]*$

RegEx Demo

<强>解体:

  • ^ - 开始
  • .* - 匹配0个或更多字符(贪婪)
  • / - 匹配/
  • [^/]* - 匹配0个或更多非/字符
  • foo - 匹配foo
  • [^/]* - 匹配0个或更多非/字符
  • $ - 结束