将字符串对齐特定字符

时间:2013-09-09 06:38:36

标签: java

所以,我有一个名为prox y的字符串,它的值为194.156.123.1.1:8080

如何将它在结肠处减半?

所以我想要2个像这样的变量。

IP=194.156.123.1.1
PORT=8080

我知道这很容易,但我是新手,新人遇到的问题对经验者来说似乎更容易:)

6 个答案:

答案 0 :(得分:2)

使用string.split

String proxy = "194.156.123.1.1:8080";
String[] foo = string.split(":");
String ip = foo[0]; // 194.156.123.1.1
String port = foo[1]; // 8080

答案 1 :(得分:0)

也可以在字符串类

上使用split方法

答案 2 :(得分:0)

试试这个:

String proxy = "194.156.123.1.1:8080";
String[] op = proxy.split(":"); //op[0] = "194.156.123.1.1" and
                                //op[1] = "8080"

答案 3 :(得分:0)

    String s = "194.156.123.1.1:8080";
    String ip = s.split(":")[0];
    String port = s.split(":")[1];

    System.out.println(ip + ", " + port);

Split应该将字符串分隔为字符串数组。

这是来自Java Doc:

public String [] split(String regex) 将此字符串拆分为给定正则表达式的匹配项。 此方法的作用就像通过调用具有给定表达式和limit参数为零的双参数split方法一样。因此,尾随空字符串不包含在结果数组中。

例如,字符串“boo:and:foo”会产生以下结果:

正则表达式结果 :{“boo”,“和”,“foo”} o {“b”,“”,“:和:f”} 参数: 正则表达式 - 分隔正则表达式

返回: 通过将此字符串拆分为给定正则表达式

的匹配项来计算的字符串数组

答案 4 :(得分:0)

$len = strlen($str);
$pos = strpose($str, ':');    

if ($pos>0 && $pos <($len-1)) {

    $ip = substr($str, 0, $pos);
    $port = substr($str, $pos+1);

} 

substr和strpos效率更高,速度更快。

我添加了绑定检查,然后是安全的。

答案 5 :(得分:0)

你可以使用它。

    String proxy= "194.156.123.1.1:8080";
    System.out.println("IP: "+proxy.split(":")[0]);
    System.out.println("PORT: "+proxy.split(":")[1]);