我希望匹配(java regex)属于某个域的所有URL,除了看起来像查询字符串的域。
例如我希望匹配
http://www.thehindu.com/arts/music/marrying-keys-to-chips/article4061904.ece
但要避免
http://www.thehindu.com/arts/music?article=23417
我尝试了以下方法,但它允许上述两种模式。
+^http://www\.thehindu\.com([^\?=])*
答案 0 :(得分:1)
怎么样?
if (yourString.matches("(http://)?www\\.thehindu\\.com[^\\?=]*") {
// match --> doesn't look like a query
} else {
// no match --> looks like a query or completely different url
}
答案 1 :(得分:0)
我认为不需要正则表达式,请尝试查找问号?
。
答案 2 :(得分:0)
试试这个:
(^|\s)http:\/\/www\.thehindu\.com([^\?])*(\s|$)
(^ | \ s)和(\ s | $)是url之间的分隔符。如果需要,可以添加更多内容。