Autor: |
Konstantin
Komissarchik |
Traductor: |
Daniel
Quintero Rojas |
Fecha: |
febrero
del 2000 |
Fuente: |
Visual
Basic Programmer's Journal (http://www.vbpj.com) |
Descripción: |
Una
dunción Trim mejorada, que no solo quite espacios de una cadena,
sino también una serie de caracteres epeciales |
La función
Trim tiene una seria dificultad: maneja solamente los caracteres
de espacio, no todos los espacios usuales, como los tabs, retornos de
carro y saltos de línea.
En lugar
de usar la función Trim estándar, use la función TrimAll,
la cual maneja todos los caracteres de espacio, y se puede mejorar para
quitar cualquier caracter editando la asignación a la variable ToEliminate:
Public Function TrimAll(ToTrim As String) As String
Static ToEliminate As String
Dim Start As Long, Finish As Long
' Base condition test
If Len(ToTrim) = 0 Then
TrimAll = ""
Exit Function
End If
' Define the characters (once) that we want to trim off
If Len(ToEliminate) = 0 Then
ToEliminate = Chr(0) & Chr(8) & Chr(9) & Chr(10) & Chr(13) & Chr(32)
End If
' Find the begining of nonblank string by checking each char
' against a list of blank chars
Start = 1
Do While Start <= Len(ToTrim)
If InStr(ToEliminate, Mid$(ToTrim, Start, 1)) Then
Start = Start + 1
Else
Exit Do
End If
Loop
' Find the end of nonblank string
Finish = Len(ToTrim)
Do While Finish > 1
If InStr(ToEliminate, Mid$(ToTrim, Finish, 1)) Then
Finish = Finish - 1
Else
Exit Do
End If
Loop
If Start > Finish Then
' If the string is completely blank,
' Start will be greater than Finish
TrimAll = ""
Exit Function
Else
' Trim out the real contents
TrimAll = Mid$(ToTrim, Start, Finish - Start + 1)
End If
End Function
|
|