2016-05-04 21 views
4

私はこの文字列を持っています。複数の空白と文字で区切られた文字列

ファイル名:私は {"File Name", "foto1.jpg"}のような2つのフィールドの文字列内の要素を入れたい

foto1.jpg。どのように私はjavaでこれを行うことができますか?

私がしようとしている...

split("\\s{2,}:\\s") 

...しかし、それは動作しません。

答えて

1

\\s+:\\s+はあなたのために働く必要があります。

public static void main(String[] args) throws Exception { 
    String s = "File Name : foto1.jpg"; 
    String[] arr = s.split("\\s+:\\s+"); // + means one or more 
    System.out.println(Arrays.toString(arr)); 

} 

O/P:あなたのケースで:

[File Name, foto1.jpg] 
+0

その合理的な私たちは、この場合には 'この作品を表すSTRING' text'や細部'に取り組むREGEX' 'でなく、もし我々が' foto1'コンパイラを持ってfoto1.jpg' anyThigを投げるいけない 'のinstadとeveryThingその外観は良いですが、私たちはここにありません詳細はこちら – Hosseini

+0

@Hosseini - 'foto1.jpg'の代わりに' foto1'を使ったとしても、出力は同じです – TheLostMind

+0

'foto1.jpg'のような名前を持っていて、画像の拡張子は言及せず、' foto1.jgp'のような間違った拡張子を 'foto1.jpg'の代わりに追加した場合は私のコードに' foto1'があります。 – Hosseini

1

あなただけのようREGXに基づいて、それをこぼしたことができます。以下はそれを得るための例です。

public class StringSplit { 
    public static void main(String[] args) { 
     String a = "File Name : foto1.jpg"; 
     String[] values = a.split(":", 2); 
     System.out.println(values[0].trim()); 
     System.out.println(values[1].trim()); 
    } 
} 
+0

みなさん、ありがとう、これはうまく動作します – thieba

+0

これはあなたを助けてくれてうれしい@thieba –

関連する問題