Función Replace

Devuelve una cadena en la que una subcadena especificada se ha reemplazado por otra subcadena un número especificado de veces.

Sintaxis

Replace(expression, find, replacewith[, start[, count[, compare]]])

Argumentos:

  • Expression: necesario. Expresión de cadena que contiene la subcadena que se va a reemplazar.
  • Find: necesario. Subcadena que se busca.
  • Replacewith: necesario. Subcadena de reemplazo.
  • Start: opcional. Posición en la expresión donde debe comenzar la búsqueda de subcadenas. Si se omite, se asume el valor 1. Se debe utilizar junto con la opción count.
  • Count: opcional. Número de sustituciones de subcadena que se deben realizar. Si se omite, el valor predeterminado es -1, lo que implica la realización de todas las sustituciones posibles. Se debe utilizar junto con la opción start.
  • Compare: opcional. Valor numérico que indica el tipo de comparación que se debe utilizar al evaluar las subcadenas. Consulte la sección Configuración para ver los valores. Si se omite, el valor predeterminado es 0, lo que implica la realización de una comparación binaria.
  • Configuración: el argumento compare puede tener los siguientes valores:

    Tabla 11-19 Constantes de comparación y descripciones

    Constante Valor Descripción
    vbBinaryCompare 0 Realiza una comparación binaria.
    vbTextCompare 1 Realiza una comparación textual.

Valor devuelto

Replace devuelve los siguientes valores:

Tabla 11-20 Valores de retorno de Replace

Si Replace devuelve
expression es de longitud cero Cadena de longitud cero ("")
expression es nula Error
find es de longitud cero Copia de expression
replacewith es de longitud cero Copia de expression con todas las apariciones de find eliminadas
start > Len (expresión) Cadena de longitud cero
count es 0 Copia de expression

Observaciones

El valor de retorno de la función Replace es una cadena, con sustituciones realizadas, que comienza en la posición especificada por start y concluye al final de la cadena de expresión. No es una copia de la cadena original de principio a fin.

En el siguiente ejemplo se utiliza la función Replace para devolver una cadena:

Ejemplo 1:

' A binary comparison starting at the beginning of the string. 
Dim MyString
MyString = Replace("XXpXXPXXp", "p", "Y")
' Output: " XXYXXPXXY".

Ejemplo 2:

' A textual comparison starting at position 4.
Dim MyString
MyString = Replace("XXpXXPXXp", "p", "Y", 4)
'Output: XXPXXY

Ejemplo 3:

Dim MyString
MyString = Replace("XXpXXPXXp", "X", "Y", 1, 4)
'Output: YYpYYPXXp

Ejemplo 4:

Dim MyString
MyString = Replace("XxpXxPXxp", "X", "Y", 1, -1, 0)
'Output: YxpYxPYxp
MyString = Replace("XxpXxPXxp", "X", "Y", 1, -1, 1)
'Output: YYpYYPYYp

Ejemplo 5:

Dim MyString2
MyString2 = Replace("XXpXXPXXp", "p", "")
' Output: "XXXXPXX".

Ejemplo 6:

Dim MyString4
MyString4 = Replace("XXpXXPXXp", "p", "Y", 1, 0)
' Output: "XXpXXPXXp".

Ejemplo 7:

Dim MyString5
MyString5 = Replace("XXpXXPXXp", "", "Y")
'Output: "XXpXXPXXp".