String zerschneiden

kirina

Mitglied
Meine Frage ist eigentlich ganz einfach ,-)

wie schaffe ich es aus einem String: '[~abcdefghi]' nur 'abcdefghi' rauszuholen?

Es muss definitiv eine einfachere Methode geben als das hier:

Code:
public class String_trimmer {
	public static void main(String[] args) {
		String test = "[~abcdefghi]";
		String test_new = "";
		char[] test_char = test.toCharArray();
		if (test_char[0] == '[') {
			if (test_char[1] == '~') {
				if (test_char[test.length() - 1] == ']') {
					for (int i = 2; i < test.length()-1; i++) {
						test_new = test_new + test_char[i];
					}
					System.out.println(test_new);
				}else {
					System.out.println("Failed!");
				}
			}else {
				System.out.println("Failed!");
			}
		} else {
			System.out.println("Failed!");
		}

	}
}

aber mir fällt grad irgendwie nichts ein:rolleyes:
 
Hallo,

nur mal so als kleiner Tipp

Schau dir mal die Methode substring und indexOf der Klasse String an.

MFG

Sascha
 
ouch, genau sowas hab ich gesucht, konnte es aber einfach nich anschauen (hatte sogar die Klasse String in der java docu angeschaut)

manchmal hab ich einfach irgendwie ein 20 m² großes Brett vor dem Kopf :(

danke!
 
Die Methode split() wäre auch eine Möglichkeit. Kommt drauf an was du genau vor hast und ob der text sich verändert usw.
 
Wieso sollte sie nichts bringen? Wenn man den String bei Sonderzeichen trennen lässt, bekommt man auch den gewünschten String raus. Sicher ind dem speziellenbeispiel wäre ein Substringt besser, aber ich schrieb ja auch es kommt drauf an, was man machen möchte. Wenn man zB die Zeichen nicht kennt, die eingeben werden, oder man möchte den Text nach anderen Vorgaben trennen.
 
Nach dem obigen Beispiel ist die Lösung mit Split nur sehr umständlich möglich.
Generell ist es nicht sinnvoll das mit der Split-Methode zu machen, wenn man nur einen bestimmten SubText aus einem Text möchte.

MFG

Sascha
 
Ja, sagte ich ja in dem speziellen beispiel ist es umständlich ;) Es kommt aber eben drauf an, wie sich der String erweitert, welche Zeichen als Trenner genutzt werden und und und, also cih find die spilt()-Methode da persönlich sehr hilfreich. Aber jedem das seine :)
 
Zurück