0

私はこのような文字列を持っています:

 14.809180,56.876968,0.000000 14.808170,56.877048,0.000000 14.805100,56.877220,0.000000 14.804130,56.877338,0.000000

つまり、最初にスペースがあり、0.000000の後にスペースがあります。14.XYZ抽出したいだけです56.XYZ。これどうやってするの?

4

4 に答える 4

2

私のコメントによると、次のようなString#split(...)を試してください。

  String test = "14.809180,56.876968,0.000000 14.808170,56.877048,0.000000 14.805100,56.877220,0.000000";
  String[] tokens = test.split("[,\\s]+");
  for (String token : tokens) {
     System.out.println(token);
  }

"[,\\s]+"splitメソッドが1つ以上の空白文字(\ s)またはコンマを使用して文字列を分割するのに役立つ正規表現です。

于 2011-10-08T01:01:58.170 に答える
0

を使用String.split()して各数値を区切り、それDouble.valueOf()をに変換しdoubleます。

String string = "14.809180,56.876968,0.000000 14.808170,56.877048,0.000000 14.805100,56.877220,0.000000 14.804130,56.877338,0.000000";
String[] numStrings = string.split("[ ,]");
for (String num : numStrings) {
    double d = Double.valueOf(num);
    // ...
}
于 2011-10-08T00:59:49.030 に答える
0

これは分割され、入力文字列のすべての小数を反復処理します

String groups[] = input.split(" ");
for(int i = 0; i < groups.length; i++) {
   String decimals[] = groups[i].split(",");
   for(int j = 0; j < decimals.length; j++) {
      float f = Float.parseFloat(decimals[j]);
      //do something with f
   }
}
于 2011-10-08T01:03:07.840 に答える
0

これは最も美しい解決策ではないかもしれませんが、機能します。

String[] myStrings = uglyString.spli(",");
Integer firstNum = new Integer(myStrings[0]);
Integer secondNum = new Integer(myStrings[1]);
于 2011-10-08T01:03:15.690 に答える