【发布时间】:2012-06-15 22:42:29
【问题描述】:
在 Java/Android 中检查字符串是否包含 URL 的最佳方法是什么?最好的方法是检查字符串是否包含 |.com | .net | .org | .info | .一切|?还是有更好的方法?
该 url 在 Android 中输入到 EditText 中,它可以是粘贴的 url,也可以是手动输入的 url,用户不想输入 http://... 我正在研究网址缩短应用。
【问题讨论】:
-
您期望什么样的 URL?相对 URL 很难检测。
/字符是一种方式,但往往会误报。 -
总是以协议开头吗?你能试着用
URL解析它吗? -
一旦新的GTLDs 出现,祝你好运;)
-
@WilliamL。 : 你没有提供足够的信息。当你说“如果一个字符串包含一个 URL”时,如何......“嘿,戴夫,我发现了这个名为 blah.com 的很棒的网站,你应该访问它”?我的意思是你的弦是从哪里来的?在这种情况下,
blah.com可能是一个有效的 URL,但您是在解析任何通用文本还是......好吧,无论如何。你的问题很模糊。正如 Dave Newton 建议的那样,URL类(和 URI 类)可用于解析。 -
任何以 .com 或 .anything 结尾的东西都不必以 http:// 开头。@Squonk 我更新了我的答案