Domanda

Sono nuovo di imparare Unicode, e non so quanto ho da imparare in base alla mia sfondo ASCII, ma sto leggendo C # spec sulle regole per gli identificatori per determinare quali sono consentiti caratteri all'interno di Azure Table (che si basa direttamente sul C # spec).

Dove posso trovare un elenco di caratteri Unicode che rientrano in queste categorie:

  • letter-character: carattere Unicode Una delle lezioni Lu, LL, Lt, Lm, Lo, o Nl
  • combining-character: carattere Unicode Una delle classi Mn o Mc
  • decimal-digit-character: Un carattere Unicode della classe Nd
  • connecting-character: Un carattere Unicode della classe Pc
  • formatting-character: Un carattere Unicode della classe Cf
È stato utile?

Soluzione

È possibile recuperare queste informazioni in modo automatico dal file di ufficiale Unicode dati, UnicodeData.txt, che è pubblicato qui:

Questo è un file con valori separati da virgola in ogni riga. La terza colonna indica la classe di ciascun carattere.

Il vantaggio di questo è che è possibile ottenere il nome del personaggio per ogni personaggio, in modo da avere una migliore idea di cosa si tratta che da solo guardando il carattere stesso (ad esempio, vuoi sapere che cosa ? è? Proprio così, è Ban. In georgiano. :-))

Altri suggerimenti

FileFormat.info ha una lista di caratteri Unicode per categoria:

http://www.fileformat.info/info/unicode/category/ index.htm

È possibile, naturalmente, l'uso LINQ:

var charInfo = Enumerable.Range(0, 0x110000)
                         .Where(x => x < 0x00d800 || x > 0x00dfff)
                         .Select(char.ConvertFromUtf32)
                         .GroupBy(s => char.GetUnicodeCategory(s, 0))
                         .ToDictionary(g => g.Key);

foreach (var ch in charInfo[UnicodeCategory.LowercaseLetter])
{
    Console.Write(ch);
}

È possibile trovare un elenco di categorie Unicode ed i loro nomi brevi su MSDN , ad esempio, "ll" è l'abbreviazione di UnicodeCategory.LowercaseLetter .

ANTLR lexer si possono trovare set di caratteri Unicode (LU, LL, LT, LM, e LO) in formato gamma conveniente.

https://www.compart.com/en/unicode/category è un sito molto utile e facile da navigare per la navigazione delle categorie. E 'ricercabili e liste di un bel po' di informazioni su singoli caratteri unicode.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top