REPLACE TODAS LETRAS SOMENTE EM PARTE DO TEXTO

USUARIO.EXCLUIDOS 01/04/2005 08:26:09
#76093
Como posso fazer isso?
Ex.:
Tenho o texto
Alguma coisa 'teste' outra coisa 'teste2'
E preciso substituir todo o conteúdo que estiver entre aspas por outro texto:

Alguma coisa     \e\s    \e outra coisa     \e\s    \e\2
Ou seja, cada letra que estiver dentro das aspas, devo acrescentar uma barra "\" antes da letra
USUARIO.EXCLUIDOS 01/04/2005 08:34:22
#76095
Tente assim o

Private Sub Command1_Click()
Dim sChar As String
sChar = "teste"
For i = 1 To Len(sChar)
nvchar = nvchar & "/" & Mid(sChar, i, 1)
Next i
nvchar = nvchar & "/"
MsgBox nvchar
End Sub


Até...
Dúvida Sanada, Tópico Encerrado.
USUARIO.EXCLUIDOS 01/04/2005 09:40:51
#76110
Já ajudou. Mas ainda preciso que esse "replace" seja feito em toda a string. Detalhe: o texto contido entre as aspas é variável, por isso preciso descobrir quais os textos que estão dentro das aspas
USUARIO.EXCLUIDOS 01/04/2005 09:56:58
#76116
Como assim váriável?
Você tem "Olá como vai 123456"
e Quer aplicar este REPLACE somente no Texto? ou Pode ser Nos números..
Detalhe o que vc quer...
USUARIO.EXCLUIDOS 04/04/2005 05:58:13
#76468
Tenho o seguinte texto:
Citação:


Este é apenas um 'teste' de mensagem com algumas 'palavras' entre aspas



Preciso alterar as palavras "teste" e "palavras"
por /t/e/s/t/e e /p/a/l/a/v/r/a/s
E retornar o texto final como:
Citação:


Este é apenas um /t/e/s/t/e de mensagem com algumas /p/a/l/a/v/r/a/s entre aspas

USUARIO.EXCLUIDOS 04/04/2005 07:47:29
#76470
Resposta escolhida
Lembrando, a função é case sensitive, para contrário, use TextCompare nos replaces.

Private Sub Command1_Click()
Dim sTemp as String

sTemp = ReplaceWord("Este é apenas um 'teste' de mensagem com algumas 'palavras' entre aspas", "teste", "/") 'ReplaceWord com "teste"

sTemp = ReplaceWord(sTemp, "palavras", "/") 'ReplaceWord com "palavras"

sTemp = Replace(sTemp, "'", "") 'Substitui aspas simples por nada.

End Sub

Function ReplaceWord(sInText As String, sReplace As String, sChar As String) As String

Dim sNewWord As String
Dim lCnt As Long

For lCnt = 1 To Len(sReplace)
sNewWord = sNewWord + sChar + Mid(sReplace, lCnt, 1)
Next

ReplaceWord = Replace(sInText, sReplace, sNewWord)
End Function


Espero que seja isso que você queira.
USUARIO.EXCLUIDOS 04/04/2005 08:54:24
#76476
é isso mesmo, mas ainda enfrento um problema:
Como encontrar todas as palavras que estão entre as aspas?
Ou seja, como encontrar "teste" e "palavras" na frase mencionada?
(lembrando que "teste" e "palavras" são variáveis, ou seja, podem ser qualquer palavra ou pode existir mais palavras entre as aspas)
USUARIO.EXCLUIDOS 04/04/2005 09:08:51
#76480
é só vocÃÅ  fazer como fiz no exemplo, dando replace em cima de replace, mas se você precisar muito, faço uma função com ParamArray.
USUARIO.EXCLUIDOS 04/04/2005 11:29:44
#76536
Entendi Zerovalue, mas ainda não consegui encontrar todas as palavras que estão entre aspas dentro da frase... A frase pode ter N palavras dentro de aspas...

USUARIO.EXCLUIDOS 06/04/2005 16:50:35
#77042
Alguém?
Página 1 de 2 [13 registro(s)]
Tópico encerrado , respostas não são mais permitidas