Função Replace

Retorna uma string na qual uma substring especificada foi substituída por outra um número especificado de vezes.

Sintaxe

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

Argumentos:

  • Expression: Obrigatório. Expressão de string que contém a substring a ser substituída.
  • Find: Obrigatório. Substring a ser pesquisada.
  • Replacewith: Obrigatório. Substring de substituição.
  • Start: Opcional. Posição na expressão na qual a pesquisa de substring deve começar. Se esse argumento for omitido, o valor 1 será assumido. Deve ser usado em conjunto com o argumento count.
  • Count: Opcional. Número de substituições de substring a serem executadas. Se esse argumento for omitido, o valor padrão será -1, o que significa fazer todas as possíveis substituições. Deve ser usado em conjunto com o argumento start.
  • Compare: Opcional. Valor numérico que indica o tipo de comparação a ser usado ao avaliar substrings. Consulte a seção Configurações para ver os valores. Se esse argumento for omitido, o valor padrão será 0, o que significa fazer uma comparação binária.
  • Configurações: O argumento compare pode ter os seguintes valores:

    Tabela 11-19 Constantes de Comparação e Descrições

    Constante Valor Descrição
    vbBinaryCompare 0 Executa uma comparação binária
    vbTextCompare 1 Executa uma comparação textual

Valor de Retorno

A função Replace retorna os seguintes valores:

Tabela 11-20 Valores de Retorno da Função Replace

Se A Função Replace Retornará
a expressão tiver tamanho zero String de tamanho zero ("")
a expressão for Nula Um erro
o argumento find tiver tamanho zero Cópia da expressão
o argumento replacewith tiver tamanho zero Cópia da expressão com todas as ocorrências do argumento find removidas
start > Len (expression) String de tamanho zero
a contagem for 0 Cópia da expressão

Comentários

O valor de retorno da função Replace é uma string, com substituições feitas, que começam na posição especificada pelo argumento start e terminam no final da string de expressão. Não é uma cópia da string original do início ao fim.

O exemplo a seguir usa a função Replace para retornar uma string:

Exemplo 1:

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

Exemplo 2:

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

Exemplo 3:

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

Exemplo 4:

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

Exemplo 5:

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

Exemplo 6:

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

Exemplo 7:

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