当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C# Char.IsLowSurrogate(String, Int32)用法及代码示例


此方法用于指示字符串中指定位置的Char对象是否为低替代值。

用法:

public static bool IsLowSurrogate (string s, int index);

参数:


  • s:这是一个字符串。
  • index:是在s中求值的字符位置。

返回值:如果s参数中指定字符的数值范围为U+DC00 通过U+DFFF否则返回

异常:

  • ArgumentNullException:如果s为null。
  • ArgumentOutOfRangeException:如果索引不在s内。

以下示例程序旨在说明Char.IsLowSurrogate(String,Int32)方法的用法:

范例1:

// C# program to demonstrate 
// Char.IsLowSurrogate(String, 
// Int32) Method 
using System; 
  
class GFG { 
  
    // Main Method 
    public static void Main() 
    { 
        try { 
  
            // calling check() Method 
            check("1234", 3); 
            check("Tsunami", 3); 
            check("psyc0lo", 4); 
  
            // declaring and initializing string s1 
            string s1 = new String(new char[] {'a',  
                        '\uD800', '\uDC00', 'z' }); 
            check(s1, 2); 
        } 
        catch (ArgumentNullException e) { 
  
            Console.Write("Exception Thrown:"); 
            Console.Write("{0}", e.GetType(), e.Message); 
        } 
        catch (ArgumentOutOfRangeException e) { 
  
            Console.Write("Exception Thrown:"); 
            Console.Write("{0}", e.GetType(), e.Message); 
        } 
    } 
  
    // Defining check() method 
    public static void check(string s, int i) 
    { 
        // checking condition 
        // using IsLowSurrogate() Method 
        bool val = Char.IsLowSurrogate(s, i); 
  
        // checking 
        if (val) 
            Console.WriteLine("String '{0}' contains Low "
                + "Surrogate value at index {1} ",  s, i); 
                              
        else
            Console.WriteLine("String '{0}' does't contain any Low"
                           + "Surrogate value at index {1}", s, i); 
                               
    } 
}
输出:
String '1234' does't contain any LowSurrogate value at index 3
String 'Tsunami' does't contain any LowSurrogate value at index 3
String 'psyc0lo' does't contain any LowSurrogate value at index 4
String 'að??z' contains Low Surrogate value at index 2

范例2:对于ArgumentNullException

// C# program to demonstrate 
// Char.IsLowSurrogate(String, 
// Int32) Method 
using System; 
  
class GFG { 
  
    // Main Method 
    public static void Main() 
    { 
        try { 
  
            // calling check() Method 
            check("1234", 3); 
            check("Tsunami", 3); 
            check("psyc0lo", 4); 
  
            // declaring and initializing string s1 
            string s1 = new String(new char[] {'a', 
                        '\uD800', '\uDC00', 'z' }); 
            check(s1, 2); 
  
            Console.WriteLine(""); 
            Console.WriteLine("s is null"); 
            check(null, 4); 
        } 
        catch (ArgumentNullException e) { 
  
            Console.Write("Exception Thrown:"); 
            Console.Write("{0}", e.GetType(), e.Message); 
        } 
        catch (ArgumentOutOfRangeException e) { 
  
            Console.Write("Exception Thrown:"); 
            Console.Write("{0}", e.GetType(), e.Message); 
        } 
    } 
  
    // Defining check() method 
    public static void check(string s, int i) 
    { 
        // checking condition 
        // using IsLowSurrogate() Method 
        bool val = Char.IsLowSurrogate(s, i); 
  
        // checking 
        if (val) 
            Console.WriteLine("String '{0}' contains Low "
                  + "Surrogate value at index {1} ",s, i); 
                                
        else
            Console.WriteLine("String '{0}' does't contain any Low"
                            + "Surrogate value at index {1}",s, i); 
                                
    } 
}
输出:
String '1234' does't contain any LowSurrogate value at index 3
String 'Tsunami' does't contain any LowSurrogate value at index 3
String 'psyc0lo' does't contain any LowSurrogate value at index 4
String 'að??z' contains Low Surrogate value at index 2 

s is null
Exception Thrown:System.ArgumentNullException

范例3:对于ArgumentOutOfRangeException

// C# program to demonstrate 
// Char.IsLowSurrogate(String, 
// Int32) Method 
using System; 
  
class GFG { 
  
    // Main Method 
    public static void Main() 
    { 
        try { 
  
            // calling check() Method 
            check("1234", 3); 
            check("Tsunami", 3); 
            check("psyc0lo", 4); 
  
            // declaring and initializing string s1 
            string s1 = new String(new char[] {'a', 
                        '\uD800', '\uDC00', 'z' }); 
            check(s1, 2); 
  
            Console.WriteLine(""); 
            Console.WriteLine("index is less than zero"); 
            check("null", -4); 
        } 
        catch (ArgumentNullException e) { 
  
            Console.Write("Exception Thrown:"); 
            Console.Write("{0}", e.GetType(), e.Message); 
        } 
        catch (ArgumentOutOfRangeException e) { 
  
            Console.Write("Exception Thrown:"); 
            Console.Write("{0}", e.GetType(), e.Message); 
        } 
    } 
  
    // Defining check() method 
    public static void check(string s, int i) 
    { 
        // checking condition 
        // using IsLowSurrogate() Method 
        bool val = Char.IsLowSurrogate(s, i); 
  
        // checking 
        if (val) 
            Console.WriteLine("String '{0}' contains Low "
                  + "Surrogate value at index {1} ",s, i); 
                                
        else
            Console.WriteLine("String '{0}' does't contain any Low"
                            + "Surrogate value at index {1}",s, i); 
                                
    } 
}
输出:
String '1234' does't contain any LowSurrogate value at index 3
String 'Tsunami' does't contain any LowSurrogate value at index 3
String 'psyc0lo' does't contain any LowSurrogate value at index 4
String 'að??z' contains Low Surrogate value at index 2 

index is less than zero
Exception Thrown:System.ArgumentOutOfRangeException

参考:



相关用法


注:本文由纯净天空筛选整理自RohitPrasad3大神的英文原创作品 C# | Char.IsLowSurrogate(String, Int32) Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。