當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


C# String.IsNormalized用法及代碼示例

IsNormalized()方法用於檢查給定的字符串是否采用特定的Unicode規範化形式。如果給定的字符串采用特定的規範化形式,則此方法返回true。否則,返回false。
此方法的重載列表中有兩種方法,如下所示:

  1. IsNormalized()
  2. IsNormalized(NormalizationForm)

重要事項:

  • 一些Unicode字符具有多個等效的二進製表示形式,這些表示形式會使搜索,排序,匹配和其他操作複雜化。
  • Unicode標準定義了一個稱為標準化的過程,當給定字符的任何等效二進製表示形式時,該過程將返回一個二進製表示形式。可以使用幾種遵循不同規則的算法(稱為標準化形式)來執行標準化。
  • .NET當前支持標準化表格C,D,KC和KD。

IsNormalized()

此方法用於檢查給定的字符串是否采用Unicode規範化形式C。如果字符串采用Unicode規範化格式C,則此方法返回true,否則返回false。


用法:

public bool IsNormalized ();

返回值:此方法的返回類型為System.Boolean。當給定的字符串不是規範化形式C時,此方法返回true;如果給定的字符串不是規範化形式即C,則該方法返回false。

異常:如果當前實例包含無效的Unicode字符,則此方法將提供ArgumentException。

例:

// 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); 
    } 
}
輸出:
String is : Hello, Geeks!
Is str1 string is in normalized form?: True

注意:IsNormalized方法返回false,因為它將遇到字符串中的第一個非規範化字符。因此,如果字符串包含非標準化字符後跟無效的Unicode字符,盡管IsNormalized返回false,但Normalize方法將引發ArgumentException。

IsNormalized(NormalizationForm)

此方法用於檢查給定的字符串是否采用指定的Unicode規範化形式。如果給定的字符串采用指定的Unicode規範化形式,則此方法將返回true,否則返回false。

用法:

public bool IsNormalized (NormalizationForm nform);

在這裏,nform是Unicode規範化形式。

返回值:此方法的返回類型為System.Boolean。如果此字符串采用nform參數指定的規範化形式,則此方法返回true。否則,返回false。

異常:如果當前實例包含無效的Unicode字符,則此方法將提供ArgumentException。

例:

// 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)); 
    } 
}
輸出:
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

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



相關用法


注:本文由純淨天空篩選整理自ankita_saini大神的英文原創作品 C# | String.IsNormalized Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。