2017-09-10 96 views
0

我想做一个Android浏览器,我有一个searchView如何区分搜索查询和URL?

现在我正在为用户在SearchView中输入的任何内容提供谷歌搜索结果,但我想区分搜索查询和URL(例如,如果用户输入“facebook.com”,应该指示用户到“http://www.facebook.com”)。

我试图检查查询是否后跟“.com”,但当用户试图访问“.net”“.in”或其他任何域名后面跟“.com”以外的内容时, 。

任何帮助,将不胜感激。谢谢。

回答

1

您可以使用

Patterns.WEB_URL.matcher(yourQueryOrUrl).matches(); 

,它将返回true,如果URL是有效的URL和假,如果仅仅是一个查询,而不是一个网址。它会处理您的案件的.in和.net域

+0

感谢您的答复,我想问我是否需要通过“facebook.com”或我需要添加'http://www.facebook.com'查询之前? –

+0

只是“facebook.com”作为字符串而已。 Like Patterns.WEB_URL.matcher(“facebook.com”)。matches(); 没有必要在查询中添加额外的“”只是通过查询 –

+0

谢谢,它工作正常,如果用户输入“'facebook.com”,但如果用户添加www。在它的前面,网页无法加载,因为双“ www“。有没有办法让它可以被检测到有多少用户输入了 这是我的代码,在验证它是否是一个URL后 web1.loadUrl(”http:// www。“+ search_q); –