This article has been excerpted from book "The Complete Visual C# Programmer's Guide" from the Authors of C# Corner.

Here are some System.String class member functions:

The ToUpper function converts a string to uppercase.: String.ToUpper().

The ToLower function converts a string to lowercase: String.ToLower().

The Concat function concatenates strings together:

Listing 20.23 below shows an example of the String.Concat overloaded methods.

Listing 20.23: Writing concatenated strings to the console

Console.Write("Enter the string array length : ");
string strArr = Console.ReadLine();
int intArr = int.Parse(strArr);

for (int i = 0; i < intArr; i++)
{
Console.Write("Enter string " + i + " : ");
strTempArr[i] = Console.ReadLine();
Console.WriteLine("The Concatenated string : " + String.Concat(strTempArr));
Console.WriteLine("the concatenation of the first two string : " +
String.Concat(strTempArr[0], strTempArr[1]));
Console.WriteLine("the concatenation of the first three string : " +
String.Concat(strTempArr[0], strTempArr[1], strTempArr[2]));
Console.WriteLine("the concatenation of the first four string : " +
String.Concat(strTempArr[0], strTempArr[1], strTempArr[2], strTempArr[3]));
}

In Listing 20.24 the Copy function returns a new string with the same value as the string entered by the user.

Listing 20.24: String.Copy

Console.WriteLine("original string : " + objString);
Console.Write("enter the string to replace the above one : ");
string strCopy = Console.ReadLine();
objString = String.Copy(strCopy);
Console.WriteLine("the string after copying : " + objString);

In Listing 20.25 the CopyTo function copies a part of one string to another string.

Listing 20.25: String.CopyTo

Console.Write("Enter the source string : ");
string strTmp = Console.ReadLine();
Console.Write("Enter the starting index for source string : ");
string strSrcSt = Console.ReadLine();
int intSrcSt = int.Parse(strSrcSt);
Console.Write("Enter the starting index in the destination string:");
string strDstSt = Console.ReadLine();
int intDstSt = int.Parse(strDstSt);
Console.Write("Enter the number of characters to be copied from the source string : ");
string strSrcLn = Console.ReadLine();
int intSrcLn = int.Parse(strSrcLn);
chArray = objStringToCharArray();
strTmp.CopyTo(intSrcSt, chArray, intDstSt, intSrcLn);
objString = new String(chArray);
Console.WriteLine("The changed string is : " + objString);

In Listing 20.26 the EndsWith function returns a Boolean value, checking whether the parent string ends with the value entered by the user.

Listing 20.26: String.EndsWith

Console.WriteLine("The string to be checked :" + objString);
Console.Write("Enter the 'ends with' string :");
String strTmp = Console.ReadLine();

if (objString.EndsWith(strTmp))
Console.WriteLine("'" + objString + "' ends with '" + strTmp + "'.");
else
Console.WriteLine("'" + objString + "' does not end with '" + strTmp + "'.");

The Format static function helps in formating strings containing numbers, dates, strings, and much more. Using the Format method you can pass in objects of different types and have them neatly inserted into your string. You can also handle column alignment and column width in the string. Below are some of the rules of using the overloaded static Format method.

Refer to C#.NET help for a full list of format strings. In Listing 20.27, the C format parameter is used for currency. If the value before the colon is negative, it is left justified to fit the number of characters of the value; if the value is positive, it is right justified.

Listing 20.27: String.Format

String strTmp = "{0} is working in {1,10} to earn {2,5:C} per month.\n{0} then works again in {1,-10} to earn the {2,-5:C} in cash";
Console.WriteLine("The source string is : " + strTmp);
Console.Write("Enter the first replacement string (a name) : ");
String strTmp1 = Console.ReadLine();
Console.Write("Enter the second replacement string (a place) : ");
String strTmp2 = Console.ReadLine();
Console.Write("Enter a numeral : ");
String strTmp3 = Console.ReadLine();

int intTmp = int.Parse(strTmp3);
Console.WriteLine("the modified string :" + String.Format(strTmp, strTmp1, strTmp2, intTmp));

Figure20.1.gif

Figure 20.1: Output of Formatted String

The GetHashCode function returns the hash code(a 32-bit signed integer value) for the string:

Console.WriteLine("Hash of '" + objString + "' is : " + objString.GetHashCode());

If you want to insert a string into the middle of another string, you can use the Insert method. The Insert method is illustrated in Listing 20.28 by having the user enter a string to be inserted into an existing string at a chosen position.

Listing 20.28: String.Insert

Console.WriteLine("the original string : " + objString);
Console.Write("Enter the string to be inserted : ");
string strTmp = Console.ReadLine();
Console.Write("Enter the position where it has to be inserted :");
int intTmp = int.Parse(Console.ReadLine());
objString = objString.Insert(intTmp, strTmp);
Console.WriteLine("the modified string : " + objString);

The Join function joins two strings and string arrays into one body:

The StartsWith method is similar to the EndsWith method, except it verifies that a substring exists at the beginning of the parent string. As shown in Listing 20.29, the StartsWith function returns a Boolean value indicating whether the string starts with a string entered by the user.

Listing 20.29: String.StartsWith

Console.WriteLine("The original string : " + objString);
Console.Write("Enter the string to search for :");
string strTmp = Console.ReadLine();

if (objString.StartsWith(strTmp))
Console.WriteLine("The string '" + objString + "' starts with '" + strTmp + "'.");
else
Console.WriteLine("The string '"+objString+"' does not start with '" + strTmp + "'.");

The SubString function retrieves a part of the string from the original string:

The Split function splits a string delimited with some specified characters. It identifies the substrings that are delimited by one or more characters specified in an array, then returns these substrings in a string array. Delimiter characters are not included in the substrings. The Split function has forms like this:

The Split function returns one of these:

For example, if we want to split string 38,\n29, 57 with a character array separator list containing comma and space characters, we will get "38", "", "29", "", "57" as string array elements returned. Or, if we want to split string "38..29..57" with the character array delimiter list containing a period '.' , we will get "38", "", "29", "", "57" as string array elements.

The Trim function removes white space characters or specified characters from the beginning and end of the string:

As demonstrated in Listing 20.30, the TrimEnd function removes all occurrences of the set of characters in the array from the end of the string.

Listing 20.30: String.TrimEnd

Console.WriteLine("The original string is : " + objString);
Console.Write("Enter the character array : ");
char[] c = Console.ReadLine().ToCharArray();
Console.WriteLine("The modified string is : " + objString.TrimEnd(c));

As demonstrated in Listing 20.31, the TrimStart function removes all occurrences of the set of characters in the array from the beginning of the string.

Listing 20.31: String.TrimStart

Console.WriteLine("The original string is : " + objString);
Console.Write("Enter the character array : ");
char[] c = Console.ReadLine().ToCharArray();
Console.WriteLine("The modified string is : " + objString.TrimStart(c));

The IndexOf function returns the index of the first occurrence of a character or string in a given string. The search for the string stops when the required value is found or when the end of the string is reached. The function returns the index if the value is found or -1 if it is not found. The IndexOf function has these forms:

The IndexOfAny function returns the index of the first occurrence of any character of the character array in the given string. The search of the string stops when the required value is found or until the end of the string is reached. It returns the index if the value is found or -1 if it is not found. The IndexOfAny function has these forms:

Conclusion

Hope this article would have helped you in understanding the important Member Functions using C#. See other articles on the website on .NET and C#.

visual C-sharp.jpg
The Complete Visual C# Programmer's Guide covers most of the major components that make up C# and the .net environment. The book is geared toward the intermediate programmer, but contains enough material to satisfy the advanced developer.