Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: Visual Basic
Expertise: Beginner
Mar 5, 2001

A Super-Efficient Toggle Case Using XOR


My benchmarking shows that ToggleCase can crunch through a 2,000,000 character string in under 4 seconds on a Pentium II.
 
Public Function ToggleCase(ByVal strData As String) As String

    'This technique gets its blistering
    'speed from the super efficient
    'bitwise operation.

    Dim i As Long
    Dim lngUBound As Long
    Dim str() As Byte
    'put the string into a byte array
    str() = strData
    'cache the upper boundary value of the array
    lngUBound = UBound(str)
    For i = 0 To lngUBound
        'toggling the case only applies alpha characters
        If str(i) > 64 And str(i) < 123 Then
            'XOR-ing the ASCII value of the character with 32
            'has the effect of toggling its case
            str(i) = str(i) Xor 32
        End If
    Next i
    'return the 
Eugene Quah
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap