0

我有一堆这样的字符串:

Some text, bla-bla http://www.easypolls.net/poll.html?p=51e5a300e4b084575d8568bb#.UeWjBcCzaaA.twitter

我需要将此字符串解析为两个:

Some text, bla-bla

http://www.easypolls.net/poll.html?p=51e5a300e4b084575d8568bb#.UeWjBcCzaaA.twitter

我需要将它们分开,但是,当然,只解析 URL 就足够了。

你能帮我吗,我怎样才能从这样的字符串中解析 url。

4

4 回答 4

2

这取决于您希望解析器有多健壮。如果您可以合理地期望每个 url 都以 http:// 开头,那么您可以使用

  string.indexOf("http://"); 

这将返回您传入的字符串的第一个字符的索引(如果字符串没有出现,则返回 -1)。

返回仅包含 URL 的子字符串的完整代码:

  string.substring(string.indexOf("http://"));

这是 Java 的 String 类的文档。让它成为你编程中的朋友!http://docs.oracle.com/javase/7/docs/api/java/lang/String.html

于 2013-07-17T18:39:59.383 回答
2

通过使用split

    String str = "Some text, bla-bla http://www.easypolls.net/poll.html?p=51e5a300e4b084575d8568bb#.UeWjBcCzaaA.twitter";
    String [] ar = str.split("http\\.*");
    System.out.println(ar[0]);
    System.out.println("http"+ar[1]);
于 2013-07-17T18:40:46.433 回答
1

尝试这样的事情:

    String string = "sometext http://www.something.com";
    String url = string.substring(string.indexOf("http"), string.length());
    System.out.println(url);

或使用拆分。

于 2013-07-17T18:38:22.627 回答
-2

我知道在 PHP 中你可以运行 explode() ( http://www.php.net/manual/en/function.explode.php ) 函数。您可以选择要爆炸的角色。例如,您可以在“http://”处爆炸

因此,通过 PHP 运行代码如下所示:

$string  = "Some text, bla-bla http://www.easypolls.net/poll.html?p=51e5a300e4b084575d8568bb#.UeWjBcCzaaA.twitter";
$pieces = explode("http://", $string);
echo $pieces[0]; // Would print "Some text, bla-bla"
echo $pieces[1]; // Would print "www.easypolls.net/poll.html?p=51e5a300e4b084575d8568bb#.UeWjBcCzaaA.twitter"
于 2013-07-17T18:39:12.043 回答