ich einen String etwas wie dieses:die nicht in Anführungszeichen
Wie wissen wir, dass die Entwicklung von „der“ Nation der Menschen abhängt sowie Regierung des Landes.
Ich brauche eine Regex, um ein bestimmtes Wort zu finden sagen "das" nicht in Anführungszeichen eingeschlossen. Nach einigen zufälligen Versuchen fand ich das ((\.?) (The)). Dies erkennt das Wort "das" in doppelten Anführungszeichen sowie zwischen Anführungszeichen. Aber ich möchte nur das Wort "the" ohne Anführungszeichen in der obigen Zeichenfolge. Ich kann wirklich nicht darauf kommen, selbst nach so vielen Versuchen.
Was ich will, ist alle the
, die außerhalb doppelte Anführungszeichen und repalce sie mit 'THE' ersetzen, aber keine Änderung in Anführungszeichen. Also, wenn, Benutzer schreibt sagen, the
, tHE
, ThE
oder eine beliebige Kombination) gefunden außerhalb von Anführungszeichen wollte es nur in THE
konvertieren.
Dies ist sehr einfach: match was Sie nicht wollen (dh '" [^ "] *" ') und übereinstimmen und erfassen, was Sie brauchen' (die) '=>' new Regex (@ "" "[^ ""] * "" | (the) ")', und die 'Gruppen [1]' enthalten alle notwendigen Daten. –
@ WiktorStribiżew danke für die Hilfe. Aber, können Sie bitte erklären, wie ich zwei Gruppen als trennen kann Die Regex wählt den Text, der außerhalb und innerhalb von Anführungszeichen steht. –
Was ist das erwartete Ergebnis? Werden extrahiert oder ersetzt? Wird dies in C#/VB.NET Code verwendet? Wenn ja, bitte aktualisieren Sie Ihre Frage mit diesen Informationen. Fügen Sie Details hinzu, wie Sie die Regex verwenden .. –