我有一堆像这样的字符串:
Some text, bla-bla http://www.easypolls.net/poll.html?p=51e5a300e4b084575d8568bb#.UeWjBcCzaaA.twitter
我需要将这个String解析为两个:
Some text, bla-bla
http://www.easypolls.net/poll.html?p=51e5a300e4b084575d8568bb#.UeWjBcCzaaA.twitter
我需要将它们分开,但是,当然,仅解析URL就足够了。
你能帮助我吗,我怎样才能解析像这样的字符串。
答案 0 :(得分: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
答案 1 :(得分: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]);
答案 2 :(得分:1)
尝试这样的事情:
String string = "sometext http://www.something.com";
String url = string.substring(string.indexOf("http"), string.length());
System.out.println(url);
或使用拆分。
答案 3 :(得分:-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"