C# | Char.IsHighSurrogate(String, Int32) Method
This method is used to indicates whether the Char object at the specified position in a string is a high surrogate or not.
Syntax:
public static bool IsHighSurrogate (string s, int index);
Parameters:
s: It is a String.
index: It is the character position in s.
Return Value: This method returns true if the numeric value of the specified character in the s parameter ranges from U+D800
through U+DBFF;
otherwise it returns false.
Exceptions:
- ArgumentNullException: If the s is null.
- ArgumentOutOfRangeException: If the index is not a position within s.
Below programs illustrate the use of Char.IsHighSurrogate(String, Int32) Method:
Example 1:
// C# program to demonstrate the // Char.IsHighSurrogate(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, 1); } 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 IsHighSurrogate() Method bool val = Char.IsHighSurrogate(s, i); // checking if (val) Console.WriteLine( "String '{0}' contains High " + "Surrogate value at index {1} " , s, i); else Console.WriteLine( "String '{0}' does't contain any High" + "Surrogate value at index {1}" , s, i); } } |
String '1234' does't contain any HighSurrogate value at index 3 String 'Tsunami' does't contain any HighSurrogate value at index 3 String 'psyc0lo' does't contain any HighSurrogate value at index 4 String 'að??z' contains High Surrogate value at index 1
Example 2: For ArgumentNullException
// C# program to demonstrate the // Char.IsHighSurrogate(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); Console.WriteLine( "" ); Console.WriteLine( "s is null" ); check( null , 4); // declaring and initializing string s1 string s1 = new String( new char [] { 'a' , '\uD800' , '\uDC00' , 'z' }); check(s1, 1); } 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 IsHighSurrogate() Method bool val = Char.IsHighSurrogate(s, i); // checking if (val) Console.WriteLine( "String '{0}' contains High " + "Surrogate value at index {1} " ,s, i); else Console.WriteLine( "String '{0}' does't contain any High" + "Surrogate value at index {1}" ,s, i); } } |
String '1234' does't contain any HighSurrogate value at index 3 String 'Tsunami' does't contain any HighSurrogate value at index 3 String 'psyc0lo' does't contain any HighSurrogate value at index 4 s is null Exception Thrown: System.ArgumentNullException
Example 3: For ArgumentOutOfRangeException
// C# program to demonstrate the // Char.IsHighSurrogate(String, // Int32) Method using System; class GFG { // Main Method public static void Main() { try { // calling check() Method check( "1234" , 3); check( "Tsunami" , 3); // declaring and initializing string s1 string s1 = new String( new char [] { 'a' , '\uD800' , '\uDC00' , 'z' }); check(s1, 1); Console.WriteLine( "" ); Console.WriteLine( "index is less than zero" ); check( "fjsjsj" , -1); } 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 IsHighSurrogate() Method bool val = Char.IsHighSurrogate(s, i); // checking if (val) Console.WriteLine( "String '{0}' contains High " + "Surrogate value at index {1} " , s, i); else Console.WriteLine( "String '{0}' does't contain any High" + "Surrogate value at index {1}" , s, i); } } |
String '1234' does't contain any HighSurrogate value at index 3 String 'Tsunami' does't contain any HighSurrogate value at index 3 String 'að??z' contains High Surrogate value at index 1 index is less than zero Exception Thrown: System.ArgumentOutOfRangeException
Reference:
Recommended Posts:
- C# | Buffer.BlockCopy(Array, Int32, Array, Int32, Int32) Method
- Array.BinarySearch(Array, Int32, Int32, Object) Method with examples in C#
- C# | Array.BinarySearch(Array, Int32, Int32, Object, IComparer) Method
- C# | Int32.ToString Method | Set - 2
- C# | Int32.ToString Method | Set - 1
- Int32.GetTypeCode Method in C# with Examples
- Int32.CompareTo Method in C# with Examples
- C# | Char.ConvertFromUtf32(Int32) Method
- Int32.GetHashCode Method in C# with Examples
- Int32.Equals Method in C# with Examples
- C# | Char.IsSurrogate(String, Int32) Method
- C# | Char.IsLowSurrogate(String, Int32) Method
- C# | Char.ConvertToUtf32(String, Int32) Method
- C# | Char.IsControl(String, Int32) Method
- Int32.Parse(String) Method in C# with Examples
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.