Tutorials Forums
     Tutorials Videos
        Sign Up Now For FREE
Welcome, Guest
Username Password: Remember me

String Operations in VB.NET (Part I)
(1 viewing) (1) Guest
VB.NET HELP, VB.NET TUTORIALS, VB.NET CODE, VB.NET PROGRAMMING, VB.NET

Visual Basic.NET is the most recent generation of Visual Basic. Developers will be pleased to note that its new features include inheritance, method overloading, structured exception handling, and more. These capabilities make it easier than ever to create .NET applications, including Windows applications, web services, and web applications. The articles in this section give you all the tips you need to work wit this useful language.
  • Page:
  • 1

TOPIC: String Operations in VB.NET (Part I)

String Operations in VB.NET (Part I) 03 May 2010 17:29 #371

Introduction
In this article, I have compiled some common String operations that we encounter while

working with the String class. In Part I, I have covered 15 common string operations. In the

next article, I will continue this article and cover 15 more.

All the samples are based on two pre-declared string variables: strOriginal and strModified.
    Dim strOriginal As String = "These functions will come handy"
Dim strModified As String = String.Empt


1. Iterate a String
You can use the ‘for’ loop or ‘foreach’ loop to iterate through a string. The ‘for’ loop gives

you more flexibility over the iteration.
  For i As Integer = 0 To strOriginal.Length - 1
MessageBox.Show(strOriginal(i).ToString())
Next i
Or
For Each c As Char In strOriginal
MessageBox.Show(c.ToString())
Next c

2. Split a String
You can split strings using String.Split(). The method takes an array of chars, representing

characters to be used as delimiters. In this example, we will be splitting the strOriginal string

using ‘space’ as delimiter.
  Dim delim As Char() = {" "c}
Dim strArr As String() = strOriginal.Split(delim)
For Each s As String In strArr
MessageBox.Show(s)
Next s

3. Extract SubStrings from a String
The String.Substring() retrieves a substring from a string starting from a specified character

position. You can also specify the length.
' only starting position specified
strModified = strOriginal.Substring(25)
MessageBox.Show(strModified)
 
'
starting position and length of string to be extracted specified
strModified = strOriginal.Substring(20, 3)
MessageBox.Show(strModified)

4. Create a String array
There are different ways to create a Single Dimensional and Multi Dimensional String arrays.

Let us explore some of them:
    ' Single Dimensional String Array
 
Dim strArr As String() = New String(2) { "string 1", "string 2", "string 3"}
'
Omit Size of Array
Dim strArr1 As String() = New String() { "string 1", "string 2", "string 3" }
' Omit new keyword
Dim strArr2 As String() = {"string 1", "string 2", "string 3"}
 
'
Multi Dimensional String Array
 
Dim strArr3 As String(,) = New String(1, 1) { { "string 1", "string 2" }, { "string 3", "string
 
4"
} }
' Omit Size of Array
Dim strArr4 As String(,) = New String(, ) { { "string 1", "string 2" }, { "string 3", "string 4"
 
} }
'
Omit new keyword
Dim strArr5 As String(,) = { { "string 1", "string 2" }, { "string 3", "string 4" } }
 

5. Reverse a String
One of the simplest ways to reverse a string is to use the StrReverse() function. To use it in

C#, you need to add a reference to the Microsoft.VisualBasic dll.
  Dim strModified As String = StrReverse(strOriginal)
MsgBox(strModified)

6. Compare Two Strings
You can use the String.Compare() to compare two strings. The third parameter is a Boolean

parameter that determines if the search is case sensitive(false) or not(true).
      If (String.Compare(strOriginal, strModified, False)) < 0 Then
MessageBox.Show("strOriginal is less than strOriginal1")
ElseIf (String.Compare(strOriginal, strModified, False)) > 0 Then
MessageBox.Show("strOriginal is more than strOriginal1")
ElseIf (String.Compare(strOriginal, strModified, False)) = 0 Then
MessageBox.Show("Both strings are equal")
End If

7. Convert a String to Byte[] (Byte Array)
The Encoding.GetBytes() encodes all the characters into a sequence of bytes. The method

contains six overloads out of which we will be using the Encoding.GetBytes(String).
Dim b As Byte() = Encoding.Unicode.GetBytes(strOriginal)

8. Convert Byte[] to String
he Encoding.GetString() decodes a sequence of bytes into a string.
 ' Assuming you have a Byte Array byte[] b
strModified = Encoding.Unicode.GetString(b)

9. Convert a String to Char[](Char Array)
To convert a String to Char Array, use the String.ToCharArray() which copies the characters

in the string to a Unicode character array.
  Dim chArr As Char() = strOriginal.ToCharArray()

10. Convert a Char[] to String
A convenient way to convert a character array to string is to use the String constructor

which accepts a character array
 strModified = New String(chArr)

11. Test if String is null or Zero Length
A simple way to test if a string is null or empty is to use the String.IsNullOrEmpty(string)

which returns a Boolean value.
Dim check As Boolean = String.IsNullOrEmpty(strOriginal)

12. Convert the Case of a String
The String class contains methods to convert a string to lower and upper cases. However, it

lacks a method to convert a string to Proper Case/Title Case. Hence we will use the ‘TextInfo’

class to do the same.
      Dim cultureInfo As System.Globalization.CultureInfo = 
 
System.Threading.Thread.CurrentThread.CurrentCulture
Dim textInfo As System.Globalization.TextInfo = cultureInfo.TextInfo
' Lower Case
MessageBox.Show(textInfo.ToLower(strOriginal))
'
Upper Case
MessageBox.Show(textInfo.ToUpper(strOriginal))
' Proper Case
MessageBox.Show(textInfo.ToTitleCase(strOriginal))

13. Count the occurrences of words in a Strin
You can adopt multiple ways to find the occurrence of a word in a string. One of them is to

use the String.IndexOf() which is one of the ways of finding the occurrence of the word. In

VB.NET, use String.InStr().
Another simple way is to use ‘Count’ property of the Regex.Matches() collection. However

this method is slow. We will explore both these methods in the sample.
   ' Using IndexOf
Dim strt As Integer = 0
Dim cnt As Integer = -1
Dim idx As Integer = -1
strOriginal = "She sells sea shells on the sea shore"
Dim srchString As String = "sea"
Do While strt <> -1
strt = strOriginal.IndexOf(srchString, idx + 1)
cnt += 1
idx = strt
Loop
MessageBox.Show(srchString & " occurs " & cnt & " times")
 
 
'
Using Regular Expression
Dim rex As System.Text.RegularExpressions.Regex = New
 
System.Text.RegularExpressions.Regex(srchString)
Dim count As Integer = rex.Matches(strOriginal).Count
MessageBox.Show(srchString & " occurs " & count & " times")

14. Insert Characters inside a String
The String.Insert() inserts text at a specified index location of a string. You can insert either

a character or a string at a given index location. For eg: We will insert a string “very” at index

26 in string strOriginal.
  strModified = strOriginal.Insert(26, "very ")
MessageBox.Show(strModified)

15. Replace characters in a String
The String.Replace() removes characters from a string and replaces them with a new

character or string.
strModified = strOriginal.Replace("come handy", "be useful")
MessageBox.Show(strModified)


So those were 15 common string operations that we saw in this article. In the next article,

we will explore some more string operations that are used commonly in projects. I hope this

article was useful and I thank you for viewing it.
This attachment is hidden for guests. Please log in or register to see it.
Attachments:
  • Attachment This attachment is hidden for guests. Please log in or register to see it.
  • CE
  • OFFLINE
  • Administrator
  • Posts: 197
  • Karma: 78
CodersEngine
  • Page:
  • 1
Time to create page: 1.69 seconds