我怎样才能从数组中获取部分字符串?指数?

时间:2015-08-06 07:01:13

标签: java

不确定它在java中是如何工作的。 在c#中我习惯使用索引和子串。

private String[] ipaddresses = new String[]{
            "http://10.0.0.4:8098/?cmd=nothing",
            "http://10.0.0.3:8098/?cmd=nothing"};
    private String iptouse = "";

我想为iptouse分配数组ipaddresses的第一个索引,但只是索引的一部分:

iptouse = "http://10.0.0.4:8098/?cmd=" + "start";

这只是我想要的例子,只从这个部分中提取索引0中的刺痛:http://10.0.0.4:8098/?cmd=

3 个答案:

答案 0 :(得分:1)

您可以使用String类或Apache Commons StringUtils处理它(它们有一些很酷的文本解析方法)。 但是,适当的方法是使用Java URI class

你有一个非常方便的方法来提取主机和查询部分等。为了理解它,更好地阅读URI的结构here

在你的情况下,它会是这样的:

URI u = new URI("http://10.0.0.4:8098/?cmd=nothing");
String upToQuery = u.getScheme()+u.getAuthority()+u.getPath();

答案 1 :(得分:0)

在Java中使用substring()和indexOf:

是一样的
String iptouse = ipaddresses[0].substring(0,ipaddresses[0].indexOf('=')+1)+"start";

答案 2 :(得分:0)

cmd

或者

String symbol="=";
String iptouse =ipaddresses[0].split(symbol)[0]+symbol+"start";