C # Reguläre Ausdrücke mit \ Uxxxxxxxx Zeichen im Muster

Regex.IsMatch( "foo", "[\U00010000-\U0010FFFF]" ) 

Throws: System.ArgumentException: Analysieren des Bereichs "[-]" - [x-y] in umgekehrter Reihenfolge.

ei Betrachtung der Hex-Werte für \ U00010000 und \ U0010FFF erhalte ich: 0xd800 0xdc00 für das erste Zeichen und 0xdbff 0xdfff für das zweite.

So ich schätze ich habe wirklich ein Problem. Warum werden die mit \ U gebildeten Unicode-Zeichen in der Zeichenfolge in zwei Zeichen aufgeteilt?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage