2012-04-21 21 views
1

文字列の入力が「3 6」である場合文字列のintを見つける

どのように2つのintを配列に入れるのですか?それらの間に複数のスペースがあるとどうなりますか?

私はこれらの数値を{3,6} のような配列に入れたいとしますか?ありがとう

+6

あなたはどの言語を使用していますか? – Jack

+0

私はJavaを使用しています –

答えて

3

これを試してみましょう。正規表現を使用して、1つ以上のシーケンススペースが見つかり、その後int[]String[]に得られた変換される:

String numberString = " 1 2 34 7 "; 
String[] numbers = numberString.split("\\s+"); 
int[] ints = new int[numbers.length]; 
for (int i = 0; i < ints.length; i++) 
    ints[i] = Integer.parseInt(numbers[i]); 

ints配列は期待値が含ま:

System.out.println(Arrays.toString(ints)); 
> [1, 2, 34, 7] 
+1

ありがとうございます!できます!!ありがとうございました!!! –

0
$string = "3 6 4 879"; 
preg_match_all('/\d+(?=\s*)/', $string, $arr); 

これはPHPのやり方です。

+0

しかし、hesはJavaを使用して –

+0

あなたの助けてくれてありがとう! –

0

あなたがたとえば、あなたの問題のために分割して使用することができますスペースに分割

プログラム[C#の]

static void Main() 

{ 
string s = "1 3 2 7"; 
// 
// Split string on spaces. 
// ... This will separate all the words. 
// 
string[] words = s.Split(' '); 
foreach (string word in words) 
{ 
    Console.WriteLine(word); 
} 
} 

出力

+0

彼はintとしてそれらを望んでいると思うので、C#でintにそれらの文字列を解析する必要があります。 – Jack

+0

このサンプルは良いと分割のための右、そして変換器を必要としない... – aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

+0

しかし、@Leaf C.問題のためにあなたは正しい私のサンプルが変換する必要があります。 – aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

0
Scanner sc = new Scanner(mString); 
while (sc.hasNextInt()){ 
    mArrayList.add(sc.nextInt()) 
} 

は、それからちょうど後ろアレイへのArrayListを変換します。

+0

ご協力いただきありがとうございます! –

関連する問題