String in String Array splitten

Taramsis

Bekanntes Mitglied
Hi Leute,

ich versuch grad eine String, dass ich aus Matlab ausgelesen habe in Java zu bearbeiten! Mein eingelesener String sieht ungefähr so aus:


Es sind genau 101 Werte! Nun möchte ich zum einen das "ans =" loswerden und die ganzen leerzeichen! Ich habe im Netz etwas über pattern gelesen und folgendes nicht erfolgreich probiert.
Java:
String[] tempSplit = new String[200];
tempSplit = Pattern.compile(" ").split(out);
System.out.println(Arrays.toString(tempSplit));

Nun werden alle leerzeich von Kommas ersetzt!?
Würde mich über jede Hilfe freuen!?
 
Zuletzt bearbeitet von einem Moderator:
new String[200]; kannst du dir sparen, split legt eh ein neues Array an, schreibe
String[] tempSplit = Pattern.compile(" ").split(out);
bzw.
String[] tempSplit = out.split(" ");

und das Array enthält dann lauter bereinigte Teilstring, die Komma kommen nur durch die Ausgabe,
Arrays.toString() fügt sie hinzu, aber nicht ins Array, nur fürs System.out.println

wenn du kein Array willst, verwende replace()
 
>Nun werden alle leerzeich von Kommas ersetzt!?

Nö, das ist nur die Ausgabe vom Array. [element1 , element2 , ..... , lastElement]

sowas?:

Java:
String s = "ans=\n\n\n0.1\n0.2";
String[] splitet = s.split("\\s");
List<String> list = new ArrayList<String>();
for (int i = 1; i < splitet.length; i++) {
	if (splitet[i] == null || splitet[i].length() == 0) {
		continue;
	}
	list.add(splitet[i]);
}
for (String str : list) {
	System.out.println(str);
}
 
oder auch
Java:
public class Test
{
    public static void main(String[] args)
    {
        String st = " aa   bb\n ww k";
        System.out.println(Arrays.toString(st.split(" ")));
        System.out.println(Arrays.toString(st.trim().split(" +")));
        System.out.println(Arrays.toString(st.trim().split("\\s+")));
    }
}
 
Nun möchte ich zum einen das "ans =" loswerden
durch substring z.B.
Java:
out = out.substring(out.indexOf("=")+1);
Sicher, dass in dem String ausser Leerzeichen keine weiteren white spaces enthalten sind?
Ich würde das in etwa so lösen:
Java:
out = out.substring(out.indexOf("=")+1).trim();
System.out.println(out);
String[] values = out.split("\\s");
Nun werden alle leerzeich von Kommas ersetzt!?
Würde mich über jede Hilfe freuen!?
Wo sollen da Kommas gesetzt werden? Ich nehme an Du siehst Kommas in der Ausgabe, das liegt aber an Arrays.toString() in den Feldern des Arrays sind keine Kommas drin - ausser es waren vorher schon welche vorhanden;-)
 

Zurück
Oben