UnicodeCategory Enumeración
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Define la categoría Unicode de un carácter.
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
- Herencia
- Atributos
Campos
ClosePunctuation | 21 | Carácter de cierre de uno de los signos de puntuación dobles, como paréntesis, corchetes y llaves. Indicado por la designación de Unicode "Pe" (puntuación, cerrar). El valor es 21. |
ConnectorPunctuation | 18 | Carácter de signo de puntuación conector que conecta dos caracteres. Indicado por la designación de Unicode "Pc" (puntuación, conector). El valor es 18. |
Control | 14 | Carácter de código de control, con un valor Unicode de U+007F, o bien en el rango de U+0000 a U+001F o de U+0080 a U+009F. Indicado por la designación de Unicode "Cc" (otro, control). El valor es 14. |
CurrencySymbol | 26 | Carácter de símbolo de divisa. Indicado por la designación de Unicode "Sc" (símbolo, divisa). El valor es 26. |
DashPunctuation | 19 | Carácter de raya o guión. Indicado por la designación de Unicode "Pd" (puntuación, raya). El valor es 19. |
DecimalDigitNumber | 8 | Carácter de dígito decimal, es decir, un carácter que representa un entero en el intervalo entre 0 y 9. Indicado por la designación de Unicode "Nd" (número, dígito decimal). El valor es 8. |
EnclosingMark | 7 | Carácter de marca de cierre, que es un carácter no espaciado que rodea todos los caracteres anteriores hasta el carácter base incluido. Indicado por la designación de Unicode "Me" (marca, cierre). El valor es 7. |
FinalQuotePunctuation | 23 | Carácter de comilla final o de cierre. Indicado por la designación de Unicode "Pf" (puntuación, comilla final). El valor es 23. |
Format | 15 | Carácter de formato que afecta al diseño del texto o a la operación de procesos de texto, pero no se presenta normalmente. Indicado por la designación de Unicode "Cf" (otro, formato). El valor es 15. |
InitialQuotePunctuation | 22 | Carácter de comilla inicial o de apertura. Indicado por la designación de Unicode "Pi" (puntuación, comilla inicial). El valor es 22. |
LetterNumber | 9 | Número representado por una letra, en lugar de un dígito decimal; por ejemplo, el número romano cinco, que es "V". El indicador se especifica mediante la designación de Unicode "Nl" (número, letra). El valor es 9. |
LineSeparator | 12 | Carácter que se usa para separar líneas de texto. Indicado por la designación de Unicode "Zl" (separador, línea). El valor es 12. |
LowercaseLetter | 1 | Letra minúscula. Indicado por la designación de Unicode "Ll" (letra, minúscula). El valor es 1. |
MathSymbol | 25 | Carácter de símbolo matemático, como "+" o "=". Indicado por la designación de Unicode "Sm" (símbolo, matemáticas). El valor es 25. |
ModifierLetter | 3 | Carácter de letra modificadora, que es un carácter de espaciado independiente que indica modificaciones de una letra anterior. Indicado por la designación de Unicode "Lm" (letra, modificador). El valor es 3. |
ModifierSymbol | 27 | Carácter de símbolo modificador, que especifica las modificaciones de los caracteres circundantes. Por ejemplo, la barra diagonal de fracción indica que el número a la izquierda es el numerador y el número a la derecha es el denominador. El indicador se especifica mediante la designación de Unicode "Sk" (símbolo, modificador). El valor es 27. |
NonSpacingMark | 5 | Carácter no espaciado que indica modificaciones de un carácter base. Indicado por la designación de Unicode "Mn" (marca, sin espaciado). El valor es 5. |
OpenPunctuation | 20 | Carácter de apertura de uno de los signos de puntuación dobles, como paréntesis, corchetes y llaves. Indicado por la designación de Unicode "Ps" (puntuación, abrir). El valor es 20. |
OtherLetter | 4 | Letra que no es una letra mayúscula, una letra minúscula, una letra de título ni una letra modificadora. Indicado por la designación de Unicode "Lo" (letra, otra). El valor es 4. |
OtherNotAssigned | 29 | Carácter que no está asignado a ninguna categoría Unicode. Indicado por la designación de Unicode "Cn" (otro, sin asignar). El valor es 29. |
OtherNumber | 10 | Número que no es un dígito decimal ni un número de letra; por ejemplo, la fracción 1/2. El indicador se especifica mediante la designación de Unicode "No" (número, otro). El valor es 10. |
OtherPunctuation | 24 | Carácter de signo de puntuación que no es un conector, una raya, un signo de puntuación de apertura, un signo de puntuación de cierre, una comilla inicial o una comilla final. Indicado por la designación de Unicode "Po" (puntuación, otro). El valor es 24. |
OtherSymbol | 28 | Carácter de símbolo que no es un símbolo matemático, un símbolo de divisa o un símbolo modificador. Indicado por la designación de Unicode "So" (símbolo, otro). El valor es 28. |
ParagraphSeparator | 13 | Carácter que se usa para separar párrafos. Indicado por la designación de Unicode "Zp" (separador, párrafo). El valor es 13. |
PrivateUse | 17 | Carácter de uso privado, con un valor Unicode en el rango comprendido entre U+E000 y U+F8FF. Indicado por la designación de Unicode "Co" (otro, uso privado). El valor es 17. |
SpaceSeparator | 11 | Carácter de espacio, que no tiene glifo pero no es un carácter de formato o control. Indicado por la designación de Unicode "Zs" (separador, espacio). El valor es 11. |
SpacingCombiningMark | 6 | Carácter de espaciado que indica modificaciones de un carácter base y afecta al ancho del glifo para ese carácter base. Indicado por la designación de Unicode "Mc" (marca, combinación de espaciado). El valor es 6. |
Surrogate | 16 | Carácter de suplente bajo o suplente alto. Los valores de código de suplente están en el rango de U+D800 a U+DFFF. Indicado por la designación de Unicode "Cs" (otro, suplente). El valor es 16. |
TitlecaseLetter | 2 | Letra de título. Indicado por la designación de Unicode "Lt" (letra, título). El valor es 2. |
UppercaseLetter | 0 | Letra mayúscula. Indicado por la designación de Unicode "Lu" (letra, mayúscula). El valor es 0. |
Ejemplos
En el ejemplo siguiente se muestran los caracteres y sus puntos de código correspondientes para los caracteres de la categoría UppercaseLetter. Puede modificar el ejemplo para mostrar las letras en cualquier otra categoría reemplazando UppercaseLetter por la categoría de interés para usted en la asignación a la category
variable. Tenga en cuenta que la salida de algunas categorías puede ser extensa.
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
Comentarios
Los métodos y CharUnicodeInfo.GetUnicodeCategory devuelven Char.GetUnicodeCategory un miembro de la UnicodeCategory enumeración. La UnicodeCategory enumeración también se usa para admitir Char métodos, como IsUpper(Char). Estos métodos determinan si un carácter especificado es miembro de una categoría general Unicode determinada. Una categoría general Unicode define la clasificación amplia de un carácter, es decir, la designación como un tipo de letra, dígito decimal, separador, símbolo matemático, puntuación, etc.
Esta enumeración se basa en The Unicode Standard, versión 5.0. Para obtener más información, consulte las secciones sobre el "formato de archivo UCD" y los "valores de categorías generales" en la base de datos de caracteres Unicode.
El estándar Unicode define lo siguiente:
Un par suplente es una representación de caracteres codificada para un único carácter abstracto que consta de una secuencia de dos unidades de código, donde la primera unidad del par es un suplente alto y el segundo es un suplente bajo. Un suplente alto es un punto de código Unicode en el intervalo U+D800 a U+DBFF y un suplente bajo es un punto de código Unicode del intervalo U+DC00 a U+DFFF.
Una secuencia de caracteres de combinación es una combinación de un carácter base y uno o varios caracteres combinados. Un par suplente representa un carácter base o un carácter combinado. Un carácter combinado es espaciado o no espaciado. Un carácter combinado de espaciado ocupa una posición de espaciado por sí misma cuando se representa, mientras que un carácter combinado sin espaciado no lo hace. Los diacríticos son un ejemplo de sin espaciado de caracteres combinados.
Una letra modificadora es un carácter de espaciado de pie libre que, como un carácter combinado, indica modificaciones de una letra anterior.
Una marca envolvente es un carácter combinado sin espaciado que rodea todos los caracteres anteriores hasta un carácter base e incluido.
Un carácter de formato es un carácter que no se representa normalmente, pero que afecta al diseño del texto o a la operación de los procesos de texto.
El estándar Unicode define varias variaciones en algunas marcas de puntuación. Por ejemplo, un guión puede ser uno de varios valores de código que representan un guión, como U+002D (guiones menos) o U+00AD (guion flexible) o U+2010 (guion) o U+2011 (guion no separado). Lo mismo sucede con guiones, caracteres de espacio y comillas.
El estándar Unicode también asigna códigos a representaciones de dígitos decimales que son específicos de un script o idioma determinado, por ejemplo, U+0030 (dígito cero) y U+0660 (dígito indic árabe cero).