2016-11-18 1 views

Antwort

1

Beachten Sie, dass [\W^"] Matches alle Nicht-Wort Zeichen (einschließlich " und ^) oder ^ oder ". Das heißt, die ^" Zeichen in Ihrer Klasse sind redudant und können entfernt werden.

Um einige Zeichen aus einer Kurzschreibweise Zeichenklasse (wie in Ihrem Fall \W) auszuschließen, können Sie eine Reverse-Zeichenklasse in einer negierte Zeichenklasse verwenden, [^\w], und fügen Sie " dort:

[^\w"] 

Diese bedeutet: ein beliebiges Zeichen, aber ein Wort char oder ". Siehe the regex demo.

Je nach Regex-Geschmack möchten Sie möglicherweise Character class subtraction verwenden. In Java würde es wie [\W&&[^"]] aussehen und in .NET würde es wie [\W-["]] aussehen.

+0

[** Siehe diese Demo **] (https://regex101.com/r/NCr68P/1). –

Verwandte Themen