Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Ich möchte aus einem String die ersten x Zeichen heraussuchen, dabei sollen allerdings die "\n" nicht beachtet werden oder zumindest nicht mitgezählt werden.
Beispiel:
String input = "abcdef\nklkk";
herauskommen soll, in diesem fall mit den ersten 8 Zeichen:
"abcdefkl", auch "abcdef\nkl" wäre akzeptabel, wichtig ist, dass die ersten 8 nicht-\n Zeichen dabei sind.
Am einfachsten wäre es, vorher alle "\n" zu entfernen, was aber aufgrund meiner Situation nicht möglich ist, was kann ich noch tun?
Hatte mir das mit RegEx schon überlegt und jetzt, so glaube ich, eine Lösung gefunden:
Code:
([^\n]\n*){8}
Nun stehe ich aber vor dem Problem, wie ich das in Java ausschneide, bei Substring kann ich ja keinen RegEx angeben, suche so etwas wie preg_match() von PHP, das nach dem Regulären Ausdruck sucht und den ersten Fund speichert, das gibt es bestimmt oder?
Geschafft (wenn ich nicht wieder neue Probleme finde )
Java:
String s = "dea\nbcafafdd";
int länge = 4;
Pattern p = Pattern.compile("([^\n]\n*){" + länge + "}");
Matcher m = p.matcher(s);
m.find();
System.out.println( m.group().replaceAll("\n","") );
Oder habt ihr noch eine bessere / effizientere Lösung?
Schwer zu erklären.
Ich habe einen sehr großen Text in einer String Variablen (mit \n), dieser Text wird bei jedem Schleifendurchlauf um eine Zeile gekürzt, deshalb benötige ich die \n.
Aus diesem großen Text benötige ich die ersten x Zeichen, die ich herausschneide, um diese dann weiterzuverarbeiten (für die Weiterverarbeitung müssen die \n gelöscht sein, aber halt nur im SubString, im gesamten benötige ich die ja noch zum Kürzen).
Der hier gepostete Code ist nur ein Ausschnitt vom "Projekt"
Ja, da kommts auf die interpretation dann an, besonders wenn man so konkrete Fragestellungen hat
Hab mich auf das hier bezogen:
herauskommen soll, in diesem fall mit den ersten 8 Zeichen:
"abcdefkl", auch "abcdef\nkl" wäre akzeptabel, wichtig ist, dass die ersten 8 nicht-\n Zeichen dabei sind.