2016-11-08 16 views
-1

www.example.com/companies/23/brands/39/properties/78RegEx設計一個模式從url中提取id?

我如何屬性ID(78)與正則表達式從URL

因爲我嘗試這個模式相匹配。

(\/properties\/)([0-9]+)\/? 

Match 1 
Full match 46-60 `/properties/78` 
Group 1. 46-58 `/properties/` 
Group 2. 58 

匹配group2沒關係。 但實際上我只想匹配/properties/之後的數字!

我如何設計一個模式來匹配這個?

謝謝。

回答

3

您可以在第1組中獲得匹配沒有問題,在您的示例中,您正在捕獲它,而您不需要這樣做。

/properties /([\ d] +)/?

應該給你第1組匹配的號碼。

+0

[鏈接](https://regex101.com/r/cU5lC2/857) ' 第1場 全場比賽46-60 /屬性/ 78 組1. \t 58-60 78 ' 謝謝。 但它仍然沒有像我預期的那樣工作。 有一種方法可以將數字捕獲爲完全匹配嗎? – PHOENIXTH

+0

完整匹配是你的正則表達式描述的,所以在這種情況下屬性和數字。括號表示一個捕獲組。這就是爲什麼組1是數字。爲什麼你想讓這個號碼成爲完全匹配? – chatton

+0

如果你需要提取id,你可以使用match.group(1) – chatton

0

將'$'添加到您的正則表達式的結尾處。 '$'匹配字符串的結尾。