Articles of Regex

Verwirrt über Matcher-Gruppe in Java-Regex

Ich habe die folgende Zeile, typeName=”ABC:xxxxx;”; Ich muss das Wort ABC holen, Ich habe das folgende Code-Snippet geschrieben, Pattern pattern4=Pattern.compile(“(.*):”); matcher=pattern4.matcher(typeName); String nameStr=””; if(matcher.find()) { nameStr=matcher.group(1); } Also, wenn ich group(0) setze group(0) bekomme ich ABC: aber wenn ich group(1) setze, ist es ABC , also möchte ich es wissen Was bedeutet das 0 und […]

Wie extrahiert man das n-te Wort und zählt Wortvorkommen in einer MySQL-Zeichenkette?

Ich hätte gerne eine MySQL-Abfrage wie folgt: select word, count(*) from table group by word; Alle regex-Beispiele in mysql werden verwendet, um abzufragen, ob der Text mit dem Ausdruck übereinstimmt, aber nicht, um Text aus einem Ausdruck zu extrahieren. Gibt es eine solche Syntax?

Wie entferne ich Sonderzeichen aus einer Zeichenfolge?

Ich möchte Sonderzeichen entfernen wie: – + ^ . : , von einem String mit Java.

Regulärer Ausdruck für die validation von Namen und Nachnamen?

Obwohl das wie eine triviale Frage scheint, bin ich mir ziemlich sicher, dass es nicht 🙂 Ich muss Namen und Nachnamen von Leuten aus der ganzen Welt bestätigen. Wie kann ich das mit einem regulären Ausdruck machen? Wenn es nur englische wären, denke ich, dass dies es schneiden würde: ^[az -‘]+$ Allerdings muss ich auch […]

Regulärer Ausdruck zum Teilen in Leerzeichen, außer in Anführungszeichen

Ich möchte die .Net Regex.Split-Methode verwenden, um diese Eingabezeichenfolge in ein Array aufzuteilen. Es muss auf Leerzeichen aufgeteilt werden, es sei denn, es ist in ein Zitat eingeschlossen. Eingabe: Hier ist “meine Zeichenfolge” es hat “sechs Übereinstimmungen” Erwartete Ausgabe: Hier ist meine Schnur es hat sechs Spiele Welches Muster brauche ich? Muss ich auch RegexOptions […]

Java entspricht PHP’s preg_replace_callback

Ich bin dabei, eine Anwendung von PHP nach Java zu verschieben, und es werden häufig reguläre Ausdrücke im Code verwendet. Ich bin auf etwas in PHP gestoßen, das kein Java-Äquivalent zu haben scheint: preg_replace_callback() Für jede Übereinstimmung in der Regex wird eine function aufgerufen, die den Match-Text als Parameter übergibt. Als Beispiel Verwendung: $articleText = […]

Regex Look-Behind ohne offensichtliche maximale Länge in Java

Ich dachte immer, dass eine Look- Behind-Behauptung in der Regex-API von Java (und vielen anderen Sprachen) eine offensichtliche Länge haben muss. Daher sind STAR- und PLUS-Quantifizierer innerhalb von Look-Behinds nicht erlaubt. Die ausgezeichnete Online-Ressource regular-expressions.info scheint (teilweise) meine Annahmen zu bestätigen: “[…] Java geht einen Schritt weiter, indem es endliche Wiederholungen erlaubt. Sie können immer […]

Regulärer Ausdruck zum Überspringen von Zeichen in der Erfassungsgruppe

Ist es möglich, ein paar Zeichen in einer Erfassungsgruppe in regulären Ausdrücken zu überspringen? Ich benutze .NET Regexes, aber das sollte keine Rolle spielen. Grundsätzlich suche ich nach: [zufälliger Text] AB-123 [zufälliger Text] und ich brauche “AB123”, ohne den Bindestrich. Ich weiß, dass AB 2 oder 3 Großbuchstaben und 123 2 oder 3 Ziffern ist, […]

Regex für das Abgleichen von etwas, wenn es nicht etwas anderes vorausgeht

Also, mit Regex in Java, möchte ich eine Regex schreiben, die genau dann passt, wenn dem Muster nicht bestimmte Zeichen vorangestellt sind. Beispielsweise: String s = “foobar barbar beachbar crowbar bar “; Ich möchte übereinstimmen, wenn bar nicht foo vorangestellt ist. So würde Ausgabe sein: barbar beachbar crowbar bar Ich weiß, das ist wahrscheinlich eine […]

String.replaceAll (regex) erstellt denselben Ersatz zweimal

Kann mir jemand sagen warum System.out.println(“test”.replaceAll(“.*”, “a”)); Ergebnisse in aa Beachten Sie, dass das Folgende das gleiche Ergebnis hat: System.out.println(“test”.replaceAll(“.*$”, “a”)); Ich habe dies auf Java 6 & 7 getestet und beide scheinen sich genauso zu verhalten. Fehle ich etwas oder ist das ein Fehler in der Java Regex Engine?