2016-11-10 4 views
-2

Der reguläre Ausdruck \" ([^\ "] *) \" entspricht der Zeichenfolge "" abcd "" wie "" "". Was sich ändert (ich füge Escape-Zeichen zur Zeichenkette hinzu) sollte mit der Zeichenkette so gemacht werden, dass regulärer Ausdruck mit "" abcd ""welche Änderungen an der Zeichenfolge "" abcd "" vorgenommen werden sollten (alle doppelten Anführungszeichen sollten beibehalten werden), damit der reguläre Ausdruck "([^ "] *) "

Entschuldigen Sie, wenn es eine ungültige Frage ist. Aber meine Anforderung ist, die Zeichenfolge mit dem angegebenen regulären Ausdruck Dank im Voraus zu vergleichen.

+0

Versuchen, ein Tool wie http://regexr.com/ mit dem Problem zu isolieren . – axlj

+0

@LupuSilviu dieser Teil der Regex entspricht allem ** außer ** Anführungszeichen. – UnholySheep

+0

@ UnheiligSheep Sie sind richtig. @VikranthSanka. Sie müssen die Anführungszeichen aus der Zeichenfolge entfernen. '" abcd "' ist eine Übereinstimmung. Die Regex erfordert, dass die Zeichenfolge mit Anführungszeichen beginnt und endet, und stoppt, sobald Anfangs- und Endanführungszeichen gefunden werden. –

Antwort

0

Welche Änderungen sollten an der Zeichenkette vorgenommen werden, sodass der reguläre Ausdruck mit "" abcd "" übereinstimmen sollte?

Sie können Regex „“ ABCD „“ machen, indem ein anderes \" von beiden Seiten auf Ihren Code hinzufügen und entfernen () (optional), keine Notwendigkeit für sie. Ihr Code wird sein:

\"\"[^\"]*\"\" 

Demo: https://regex101.com/r/6sPoEc/6

Wenn Sie möchten, zu begrenzen, was im Inneren ist die Zitate nur alphabetisch sein, Sie können [a-zA-Z].

\"\"[a-zA-Z]+\"\" 

Demo: https://regex101.com/r/6sPoEc/5

Wenn Sie aber wollen alphabetics, Zahlen enthalten und _ innerhalb der Anführungszeichen unterstreichen, verwenden \w

\"\"[\w]+\"\" 

Demo: https://regex101.com/r/6sPoEc/4

By the way Seien Sie vorsichtig mit + und *.

+ zurückkehren kann mindestens ein Zeichen oder mehr, während * kann null oder mehr Zeichen zurück, was bedeutet, daß leere * Zitate zurückkehren """"

Verwandte Themen