C# | Método String.IsNormalized

El método IsNormalized() se usa para verificar si la string dada está en una forma de normalización Unicode particular o no. Si la string dada está en la forma normalizada particular, entonces este método devuelve verdadero. De lo contrario, devuelve falso.
Hay dos métodos en la lista de sobrecarga de este método de la siguiente manera:

  1. EstáNormalizado()
  2. Está Normalizado (Forma de Normalización)

Puntos importantes:

  • Algunos caracteres Unicode tienen múltiples representaciones binarias equivalentes que complican las operaciones de búsqueda, clasificación, coincidencia y otras.
  • El estándar Unicode define un proceso denominado normalización que devuelve una representación binaria cuando se le da cualquiera de las representaciones binarias equivalentes de un carácter. La normalización se puede realizar con varios algoritmos, llamados formas de normalización, que obedecen a diferentes reglas.
  • .NET actualmente admite los formularios de normalización C, D, KC y KD.

EstáNormalizado()

Este método se usa para verificar si la string dada está en la forma C de normalización Unicode o no. Si la string está en la forma C normalizada de Unicode, este método devuelve verdadero, de lo contrario, falso.

Sintaxis:

public bool IsNormalized ();

Valor de retorno: el tipo de retorno de este método es System.Boolean . Este método devuelve verdadero cuando la string dada está en forma de normalización C y devuelve falso cuando la string dada no está en forma de normalización, es decir, C.

Excepción: si la instancia actual contiene caracteres Unicode no válidos, este método generará ArgumentException .

Ejemplo:

CSharp

// C# program to illustrate the
// IsNormalized() method
using System;
using System.Text;
  
class GFG {
      
    // Main method
    static public void Main()
    {
  
        // string
        string str1 = "Hello, Geeks!";
  
        bool value;
  
        // check the given string is
        // in normalized form or not
        // using IsNormalized() method
        value = str1.IsNormalized();
  
        // Display the data
        Console.WriteLine("String is : {0}", str1);
        Console.WriteLine("Is str1 string is in normalized form?: {0}", 
                                                                value);
    }
}
Producción:

String is : Hello, Geeks!
Is str1 string is in normalized form?: True

Nota: El método IsNormalized devuelve falso ya que encontrará el primer carácter no normalizado en una string. Por lo tanto, si una string contiene caracteres no normalizados seguidos de caracteres Unicode no válidos, el método Normalize generará una ArgumentException aunque IsNormalized devuelva false .

Está Normalizado (Forma de Normalización)

Este método se utiliza para verificar si la string dada está en la forma de normalización Unicode especificada o no. Si la string dada está en el formato de normalización Unicode especificado, este método devolverá verdadero, de lo contrario, falso.

Sintaxis:

public bool IsNormalized (NormalizationForm nform);

Aquí, nform es un formulario de normalización Unicode.

Valor de retorno: el tipo de retorno de este método es System.Boolean . Este método devuelve verdadero si esta string está en la forma de normalización especificada por el parámetro nform . De lo contrario, devuelve falso .

Excepción: este método generará ArgumentException si la instancia actual contiene caracteres Unicode no válidos.

Ejemplo:

CSharp

// C# program to illustrate the 
// IsNormalized(NormalizationForm) method
using System;
using System.Text;
  
class Sample {
      
    // Main method
    public static void Main()
    {
          
        // create and initialize string
        string str1 = "GeeksforGeeks!";
  
        // Display and check the given string 
        // is in C, D, KC, and KD normalized form
        // Using IsNormalized(NormalizationForm) method
        Console.WriteLine("Is string str1 is normalized to form C - {0}",
                             str1.IsNormalized(NormalizationForm.FormC));
                               
        Console.WriteLine("Is string str1 is normalized to form D - {0}",
                             str1.IsNormalized(NormalizationForm.FormD));
                               
        Console.WriteLine("Is string str1 is normalized to form KC - {0}",
                             str1.IsNormalized(NormalizationForm.FormKC));
                               
        Console.WriteLine("Is string str1 is normalized to form KD - {0}",
                             str1.IsNormalized(NormalizationForm.FormKD));
    }
}
Producción:

Is string str1 is normalized to form C - True
Is string str1 is normalized to form D - True
Is string str1 is normalized to form KC - True
Is string str1 is normalized to form KD - True

Referencia: https://docs.microsoft.com/en-us/dotnet/api/system.string.isnormalized?view=netframework-4.7.2

Publicación traducida automáticamente

Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *