正则表达式匹配字符串与五个正斜杠

时间:2015-12-08 17:35:38

标签: regex

我想编写一个正则表达式来匹配任何带有5个正斜杠的字符串。这是为了匹配Google Analytics中的网址。我以为我已经接近了,但还没有雪茄。这就是我提出的:

\/.*\/.*\/.*\/.*\/.*$

但它并不匹配任何东西。我怎么能纠正这个?或者是不可能的?

5 个答案:

答案 0 :(得分:4)

以下正则表达式will work

.*(?:\/.*){5}

说明:

.*             # Any character (except newlines) 0 or more times
   (?:         # Start of non-capturing group
      \/       # Matches `/` literally (is esacped with a backslash)
        .*     # Any character (except newlines) 0 or more times
          )    # End of group
           {5} # The previous group five times

答案 1 :(得分:0)

如果你想要像/ aaa / bbb / ccc / ddd /这样的话,这就可以了:/ [^ /] + / [^ /] + / [^ /] + / [^ /] + / 但是,有更多的事情需要考虑?

  1. 这是唯一接受的格式吗?
  2. 在第一个斜线之前是否可以有任何字符串?
  3. 在最后一次斜线之后是否可以有任何字符串?
  4. 如果这个不适合您的需求,您可能会提供一些有效和无效的输入。

    干杯。

答案 2 :(得分:0)

你可以使用“(\ w * \ W){5}”,因为“\ W”用于非单词字符。

答案 3 :(得分:0)

这样简单:

(/[^/]*){5}

如果斜杠之间至少需要一个字符,请将*更改为+。

答案 4 :(得分:0)

我只需要拉出仅包含字符串的链接,但不包括数字和Google Analytics(分析)中的网址查询。

所以,我需要这个URL

www.site.com/en/rent/cairo/apartments-for-rent /

并排除这些

www.website.com/en/buy/apartment-for-sale-in-acacia-compound-new-cairo-947145/

  www.website.com/en/buy/apartment-for-sale-in-acacia-compound-new-cairo-947145/?price=1000