-1

proxyという文字列があり、値は194.156.123.1.1:8080.

結腸で半分にするにはどうすればよいですか?

だから私はこのような2つの変数が欲しい.

IP=194.156.123.1.1
PORT=8080

私はこれが本当に簡単であることを知っていますが、私は初心者です。

4

6 に答える 6

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
于 2013-09-09T06:41:17.063 に答える
0

文字列クラスで分割メソッドを使用することもできます

于 2013-09-09T06:43:08.040 に答える
0

これを試して :

String proxy = "194.156.123.1.1:8080";
String[] op = proxy.split(":"); //op[0] = "194.156.123.1.1" and
                                //op[1] = "8080"
于 2013-09-09T06:43:25.003 に答える
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) この文字列を、指定された正規表現の一致で分割します。このメソッドは、指定された式とゼロの制限引数を使用して 2 引数の split メソッドを呼び出すかのように機能します。したがって、後続の空の文字列は、結果の配列には含まれません。

たとえば、文字列「boo:and:foo」は、次の式で次の結果を生成します。

Regex Result : { "boo", "and", "foo" } o { "b", "", ":and:f" } パラメータ: regex - 区切りの正規表現

戻り値: この文字列を指定された正規表現の一致で分割することによって計算された文字列の配列

于 2013-09-09T06:44:01.863 に答える
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 はより効率的で高速です。

境界チェックを追加したので安全です。

于 2013-09-09T06:52:04.773 に答える
0

これを使用できます。

    String proxy= "194.156.123.1.1:8080";
    System.out.println("IP: "+proxy.split(":")[0]);
    System.out.println("PORT: "+proxy.split(":")[1]);
于 2013-09-09T06:52:55.003 に答える