UnicodeCategory Enumerazione
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Definisce la categoria Unicode di un carattere.
public enum class UnicodeCategory
public enum UnicodeCategory
[System.Serializable]
public enum UnicodeCategory
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum UnicodeCategory
type UnicodeCategory =
[<System.Serializable>]
type UnicodeCategory =
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type UnicodeCategory =
Public Enum UnicodeCategory
- Ereditarietà
- Attributi
Campi
ClosePunctuation | 21 | Carattere di chiusura di una coppia di segni di punteggiatura, come parentesi, parentesi quadre e parentesi graffe. Identificato dalla designazione Unicode "Pe" (punctuation, close). Il valore è 21. |
ConnectorPunctuation | 18 | Carattere di punteggiatura connettore che collega due caratteri. Identificato dalla designazione Unicode "Pc" (punctuation, connector). Il valore è 18. |
Control | 14 | Carattere di codice di controllo, con valore Unicode U+007F o compreso nell'intervallo da U+0000 a U+001F o da U+0080 a U+009F. Identificato dalla designazione Unicode "Cc" (other, control). Il valore è 14. |
CurrencySymbol | 26 | Carattere di simbolo di valuta. Identificato dalla designazione Unicode "Sc" (symbol, currency). Il valore è 26. |
DashPunctuation | 19 | Carattere di trattino o lineetta. Identificato dalla designazione Unicode "Pd" (punctuation, dash). Il valore è 19. |
DecimalDigitNumber | 8 | Carattere cifra decimale, ovvero un carattere che rappresenta un numero intero nell'intervallo da 0 a 9. Identificato dalla designazione Unicode "Nd" (number, decimal digit). Il valore è 8. |
EnclosingMark | 7 | Carattere di inclusione, ovvero un carattere di combinazione senza spaziatura che circonda tutti i caratteri precedenti e fino a un carattere di base incluso. Identificato dalla designazione Unicode "Me" (mark, enclosing). Il valore è 7. |
FinalQuotePunctuation | 23 | Virgoletta di chiusura o finale. Identificato dalla designazione Unicode "Pf" (punctuation, final quote). Il valore è 23. |
Format | 15 | Carattere di formato che influisce sul layout del testo o sull'operazione dei processi di testo, ma il cui rendering non viene eseguito normalmente. Identificato dalla designazione Unicode "Cf" (other, format). Il valore è 15. |
InitialQuotePunctuation | 22 | Virgoletta di apertura o iniziale. Identificato dalla designazione Unicode "Pi" (punctuation, initial quote). Il valore è 22. |
LetterNumber | 9 | Numero rappresentato da una lettera, anziché da una cifra decimale, ad esempio il numerale romano per cinque, ovvero "V". L'indicatore è identificato dalla designazione Unicode "Nl" (number, letter). Il valore è 9. |
LineSeparator | 12 | Carattere usato per separare righe di testo. Identificato dalla designazione Unicode "Zl" (separator, line). Il valore è 12. |
LowercaseLetter | 1 | Lettera minuscola Identificato dalla designazione Unicode "Ll" (letter, lowercase). Il valore è uguale a 1. |
MathSymbol | 25 | Carattere di simbolo matematico, come"+" o "=". Identificato dalla designazione Unicode "Sm" (symbol, math). Il valore è 25. |
ModifierLetter | 3 | Carattere di modifica, ovvero un carattere di spaziatura libero che indica modifiche di una lettera precedente. Identificato dalla designazione Unicode "Lm" (letter, modifier). Il valore è 3. |
ModifierSymbol | 27 | Carattere di simbolo di modifica, che indica modifiche dei caratteri adiacenti. Ad esempio, la barra di frazione che indica che il numero a sinistra è il numeratore e quello a destra è il denominatore. L'indicatore è identificato dalla designazione Unicode "Sk" (symbol, modifier). Il valore è 27. |
NonSpacingMark | 5 | Carattere senza spaziatura che indica modifiche di un carattere di base. Identificato dalla designazione Unicode "Mn" (mark, nonspacing). Il valore è 5. |
OpenPunctuation | 20 | Carattere di apertura di una coppia di segni di punteggiatura, come parentesi, parentesi quadre e parentesi graffe. Identificato dalla designazione Unicode "Ps" (punctuation, open). Il valore è 20. |
OtherLetter | 4 | Lettera che non è una maiuscola, una minuscola, un'iniziale maiuscola o un carattere di modifica. Identificato dalla designazione Unicode "Lo" (letter, other). Il valore è 4. |
OtherNotAssigned | 29 | Carattere non assegnato ad alcuna categoria Unicode. Identificato dalla designazione Unicode "Cn" (other, not assigned). Il valore è 29. |
OtherNumber | 10 | Numero che non è né una cifra decimale né un numero rappresentato da una lettera, ad esempio la frazione 1/2. L'indicatore è identificato dalla designazione Unicode "No" (number, other). Il valore è 10. |
OtherPunctuation | 24 | Carattere di punteggiatura che non è un connettore, un trattino, un segno di punteggiatura di apertura, un segno di punteggiatura di chiusura, una virgoletta iniziale o una virgoletta finale. Identificato dalla designazione Unicode "Po" (punctuation, other). Il valore è 24. |
OtherSymbol | 28 | Carattere di simbolo diverso da un simbolo matematico, un simbolo di valuta o un simbolo di modifica. Identificato dalla designazione Unicode "So" (symbol, other). Il valore è 28. |
ParagraphSeparator | 13 | Carattere usato per separare paragrafi. Identificato dalla designazione Unicode "Zp" (separator, paragraph). Il valore è 13. |
PrivateUse | 17 | Carattere a uso privato, con valore Unicode compreso nell'intervallo da U+E000 a U+F8FF. Identificato dalla designazione Unicode "Co" (other, private use). Il valore è 17. |
SpaceSeparator | 11 | Spazio, senza glifo ma che non è un controllo o un carattere di formato. Identificato dalla designazione Unicode "Zs" (separator, space). Il valore è 11. |
SpacingCombiningMark | 6 | Carattere di spaziatura che indica modifiche di un carattere di base e influisce sulla larghezza del glifo per il carattere di base. Identificato dalla designazione Unicode "Mc" (mark, spacing combining). Il valore è 6. |
Surrogate | 16 | Carattere surrogato alto o surrogato basso. I valori di codice surrogato sono compresi nell'intervallo da U+D800 a U+DFFF. Identificato dalla designazione Unicode "Cs" (other, surrogate). Il valore è 16. |
TitlecaseLetter | 2 | Lettera iniziale maiuscola. Identificato dalla designazione Unicode "Lt" (letter, titlecase). Il valore è 2. |
UppercaseLetter | 0 | Lettera maiuscola. Identificato dalla designazione Unicode "Lu" (letter, uppercase). Il valore è 0. |
Esempio
Nell'esempio seguente vengono visualizzati i caratteri e i relativi punti di codice corrispondenti per i caratteri nella categoria UppercaseLetter. È possibile modificare l'esempio per visualizzare le lettere in qualsiasi altra categoria sostituendo UppercaseLetter con la categoria di interesse dell'utente nell'assegnazione alla category
variabile. Si noti che l'output per alcune categorie può essere esteso.
using System;
using System.Globalization;
public class Example
{
public static void Main()
{
int ctr = 0;
UnicodeCategory category = UnicodeCategory.UppercaseLetter;
for (ushort codePoint = 0; codePoint < ushort.MaxValue; codePoint++) {
Char ch = (char)codePoint;
if (CharUnicodeInfo.GetUnicodeCategory(ch) == category) {
if (ctr % 5 == 0)
Console.WriteLine();
Console.Write("{0} (U+{1:X4}) ", ch, codePoint);
ctr++;
}
}
Console.WriteLine();
Console.WriteLine("\n{0} characters are in the {1:G} category",
ctr, category);
}
}
Imports System.Globalization
Module Example
Public Sub Main()
Dim ctr As Integer = 0
Dim category As UnicodeCategory = UnicodeCategory.UppercaseLetter
For codePoint As UShort = 0 To UShort.MaxValue - 1
Dim ch As Char = Convert.ToChar(codePoint)
If CharUnicodeInfo.GetUnicodeCategory(ch) = category Then
If ctr Mod 5 = 0 Then Console.WriteLine()
Console.Write("{0} (U+{1:X4}) ", ch, codePoint)
ctr += 1
End If
Next
Console.WriteLine()
Console.WriteLine()
Console.WriteLine("{0} characters are in the {1:G} category",
ctr, category)
End Sub
End Module
Commenti
Un membro dell'enumerazione UnicodeCategory viene restituito dai Char.GetUnicodeCategory metodi e CharUnicodeInfo.GetUnicodeCategory . L'enumerazione UnicodeCategory viene usata anche per supportare Char metodi, ad esempio IsUpper(Char). Tali metodi determinano se un carattere specificato è un membro di una determinata categoria generale Unicode. Una categoria generale Unicode definisce l'ampia classificazione di un carattere, ovvero la designazione come tipo di lettera, cifra decimale, separatore, simbolo matematico, punteggiatura e così via.
Questa enumerazione è basata sullo standard Unicode versione 5.0. Per altre informazioni, vedere gli argomenti correlati "UCD File Format" (Formato di file UCD) e "General Category Values" (Valori di categoria generale) in Unicode Character Database (Database di caratteri Unicode).
Lo standard Unicode definisce quanto segue:
Una coppia di surrogati è una rappresentazione di caratteri codificati per un singolo carattere astratto costituito da una sequenza di due unità di codice, in cui la prima unità della coppia è un surrogato elevato e la seconda è un surrogato basso. Un surrogato elevato è un punto di codice Unicode compreso nell'intervallo da U+D800 a U+DBFF e un surrogato basso è un punto di codice Unicode nell'intervallo da U+DC00 a U+DFFF.
Una sequenza di caratteri combinata è una combinazione di un carattere di base e uno o più caratteri combinati. Una coppia di surrogati rappresenta un carattere di base o un carattere combinato. Un carattere combinato è spaziatura o non spaziatura. Una spaziatura che combina carattere occupa una posizione di spaziatura da sola quando ne viene eseguito il rendering, mentre un carattere di combinazione senza spaziatura non viene eseguito. I segni diacritici sono un esempio di combinazione di caratteri senza spaziatura.
Una lettera di modificatore è un carattere di spaziatura libera che, come un carattere combinato, indica le modifiche di una lettera precedente.
Un contrassegno di inclusione è un carattere che non include un carattere che racchiude tutti i caratteri precedenti fino a e include un carattere di base.
Un carattere di formato è un carattere di cui non viene normalmente eseguito il rendering, ma che influisce sul layout del testo o sull'operazione dei processi di testo.
Lo standard Unicode definisce diverse varianti per alcuni segni di punteggiatura. Ad esempio, un trattino può essere uno dei diversi valori di codice che rappresentano un trattino, ad esempio U+002D (trattino meno) o U+00AD (trattino morbido) o U+2010 (trattino) o U+2011 (trattino non di interruzione). Lo stesso vale per trattini, spazi e virgolette.
Lo standard Unicode assegna anche codici a rappresentazioni di cifre decimali specifiche di uno script o una lingua specifica, ad esempio U+0030 (cifra zero) e U+0660 (cifra indic araba zero).