Es gibt mehrere Bereiche in Unicode-Zeichen, die Ziffern darstellen, für die char.IsDigit
true
zurückgibt. Zum Beispiel:Numerischer Wert eines Ziffernzeichens in C finden #
bool b1 = char.IsDigit('\uFF12'); // full-width '2' -> true
bool b2 = char.IsDigit('\u0665'); // true
bool b3 = char.IsDigit('5'); // true
Ich bin auf der Suche nach einer Möglichkeit, das numerische Äquivalent solcher Zeichen zu erhalten. Beachten Sie, dass int.Parse(...)
NICHT funktioniert, da erwartet wird, dass die Eingabezeichen im Basis-Unicode-Bereich liegen ('0' .. '9').
Dies entspricht Javas Character.digit(...)
Verhalten.
Da die char.IsDigit
-Methode des .NET-Frameworks solche Zeichen korrekt als Ziffern identifiziert, erwarte ich, dass sie diese Funktionalität ebenfalls besitzt, aber ich konnte nichts finden.
Ja, gerade versucht es auch. Es funktioniert, danke. Ich habe die ganzen Methoden auf der "char" -Klasse überprüft, es ist peinlich, dass ich diese übersehen habe ... – Iravanchi
Sogar Jon Skeets Laptops booten schneller;) –