如何正则表达式的最后一部分URL?

时间:2016-04-14 07:53:49

标签: regex string url regular-language

我想做一个针对网址结尾的正则表达式:

www.company.com/orders/感谢

如果您从电子邮件或帐户页面返回订单ID,最后填写:

www.company.com/orders/thanks/的 1sfasd523425

所以我只想定位以 / thanks

结尾的网址

此主题带来类似:How do I get the last segment of URL using regular expressions

有类似的事情.*\/thanks\/.+,但目标不正确。

编辑:仅定位以/ thanks或/ thanks /

结尾的网址

2 个答案:

答案 0 :(得分:2)

尝试这样的前瞻。

正则表达式: .+(?=\/thanks$).+

说明:仅当thanks位于字符串末尾positive lookahead时才会匹配此网址。

<强> Regex101 Demo

答案 1 :(得分:0)

Use URL object dont parse it yourself 

URL url = new URL("http://stackoverflow.com/questions/36616915/how-to-regex-last-part-of-url-only");
URLDecoder.decode(url.getPath(), "utf-8");
url.getPath();
url.getContent();
url.getPort();
url.getContent();