Escaping] und ^ in einer T-SQL-Ausdruckszeichenklasse "pattern"

Ich versuche, Oracle zu emulierenRTRIM(expression, characters) in MsSql Server 2008 R2 mit der folgenden Abfrage:

REVERSE(
        SUBSTRING(
                  REVERSE(field),
                  PATINDEX('%[^chars]%', REVERSE(field)),
                  LEN(field) - PATINDEX('%[^chars]%', REVERSE(field)) + 1
             )
       )

Das Problem ist, dass ich in der Lage sein möchte, Zeichen wie zuschneiden] und^ die müssen wahrscheinlich entkommen.

Ich weiß nicht, wie ich das machen soll. Dinge wie\] arbeite nicht

Mir ist bewusst, dassESCAPE Klausel, aber ich verstehe nicht genau, wie es funktioniert, und SqlServer lehnt es übrigens ab, wenn es direkt nach der Musterzeichenfolge gesetzt wird.

Lustige Tatsache:

Wenn ich schreibe%[^^]% (Wunsch zu trimmen^) Es funktioniert nicht.

Wenn ich schreibe%[^ ^]% es trimmt^, aber natürlich auch Räume zuschneiden!

Antworten auf die Frage(2)

Ihre Antwort auf die Frage