A Super-Efficient Toggle Case Using XOR

My benchmarking shows that ToggleCase can crunch through a 2,000,000character 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

Share the Post:
Share on facebook
Share on twitter
Share on linkedin


Recent Articles: