2017-07-22 4 views
-5

としました。parser. Jsoup.parse(new File("2005-08.html"), "ISO-8859-1");のhtmlファイルを読んで"+24 -2"のような文字列を2つに分割する必要があります。"+24""-2"。それから私はこの文字列をSystem.out.println()に渡します。それはホワイトスペースとして印刷されます。試しましたJava文字列をとし、直径を

s.split(" "); 
s.split(" "); 

何も動作しません。私は1つの文字列を得る"+24 -2"

+2

'のSystem.out.println(Arrays.toString(s.splitを( "\\ sの+"))); ' –

+1

@ElliottFrischは役に立たない – user3378876

+2

あなたはちょうどタイプミスがあると思いますか? 's.split("#160; ")'ではなく、 's.split("   ")'でなければなりません。私はScala REPLで '' +24   -2 ".split("   ")'を実行し、 'Array(+24、-2)'と評価しました。 –

答えて

2

入力が+24 -2で、+24-2に分割したいとします。出力は[+24, -2]ある

String s = "+24 -2"; 

// The correct delimiter begins with an '&' 
String[] result = s.split(" "); 

// Print the result 
System.out.println(Arrays.toString(result)); 

:非常に簡単です、それはあなたがしてみましたよりも、同じ技術を使用しています

まあ。結果はresult[0]でアクセスでき、+24result[1]-2です。


あなたはまた、使用してIntegerとして、それらを解析することができます好きなら:

int firstValue = Integer.parseInt(result[0]); 
int secondValue = Integer.parseInt(result[1]); 
+4

しかし、テキストに実際に文字「 」は含まれていませんが、テキストはWebブラウザによって処理され、「 」文字は[No-Break Space](http://www.fileformat。 info/info/unicode/char/00a0/index.htm)文字の場合、 'split(" \ u00A0 ")'にする必要があります。 – Andreas

+0

それは正しい、良い点です! – Zabuza

+1

@Andreasそれはおそらく言い直され、答えとして投稿されるべきです、質問の編集後に –