Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

desisto

[Resolvido] replace em campo texto

Recommended Posts

estou usando o replace normal - campo  = Replace(campoForml, Chr(13), "<br />")

 

mas preciso trocar quando for mais de 1 'enter'

 

tipo assim: campo  = Replace(campoForml, "<br /><br />", "<br />")

 

 

 

 

so que isso nao esta funcionando

 

qual a melhor forma para cadastrar apenas 1 <br /> no lugar de varios <br /><br />

Compartilhar este post


Link para o post
Compartilhar em outros sites
Replace(texto, VbCrLf, "<br>")

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao mudou nada

 

aaaa<br /><br />ssss<br /><br /><br /><br /><br /><br />ddd

 

 

 

 

como disse

 

é pra trocar<br /><br /><br /><br />

 

por <br />

 

nao quero exibir inumeras quebras de linha

Compartilhar este post


Link para o post
Compartilhar em outros sites

por <br />

 

acabei de testar

Replace(texto, VbCrLf, "<br>") e funciona nomral tanto o

Replace(texto, Chr(13), "<br />")

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao adianta

 

se eu fizer - Replace(texto, "A", "x") => jacare = jXcXre

 

se eu tiver - Replace(texto, Chr(13), "<br />"), terei 4 <br /> no lugar do Chr(13)

 

e isso nao adianta pro caso

 

ex

 

eu [enter]

tenho[enter][enter][enter]

a força

 

 

 

no BD vai cadastrar

 

eu <br />

tenho<br /><br /><br />

a força

 

 

 

 

 

 

como eu preciso

 

trocar as repetições de <br> por apenas 1 <br>

 


eu <br />

tenho<br />

a força

Compartilhar este post


Link para o post
Compartilhar em outros sites

e se tenatr a combinacaun de Chr(13) + Chr(10)

Compartilhar este post


Link para o post
Compartilhar em outros sites

ou tb tente o

Replace(campoForml, Chr(13), "<p></p>")

Compartilhar este post


Link para o post
Compartilhar em outros sites

para efeito de teste , tente passar outro valor para a variavel e faça o replace

Replace(texto, Chr(13), "<br>")

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao adianta

 

se eu fizer - Replace(texto, "A", "x") => jacare = jXcXre

 

se eu tiver - Replace(texto, Chr(13), "<br />"), terei 4 <br /> no lugar do Chr(13)

 

e isso nao adianta pro caso

 

ex

 

eu [enter]

tenho[enter][enter][enter]

a força

 

 

 

no BD vai cadastrar

 

eu <br />

tenho<br /><br /><br />

a força

 

 

 

 

 

 

como eu preciso

 

trocar as repetições de <br> por apenas 1 <br>

 


eu <br />

tenho<br />

a força

Faz o replace:

 

Replace(texto, Chr(13), "<br />")

 

vai ficar com 3 BRs né? da mais replace nos 3 BRs:

 

MinhaString = Replace(texto, Chr(13), "<br />")

MinhaString = Replace(MinhaString , "<br /><br /><br />", "<br />")

 

certo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

isso mesmo jonathandj

 

so que nao importa se é no fim do texto ou no meio, quero trocar x[enter] por apenas 1[enter]

 

 

 

 

Igor Soto

 

se o texto tiver 4 enter nao vai funcionar, vai trocar apenas 3 e 1 vai continuar

 

MinhaString = Replace(MinhaString , "<br /><br /><br />", "<br />")

 

 

 

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

fiz na corrida, dá pra ser bem melhor, mas vai a ideia. se souber expressao regular fica menor ainda

<%
valor = "<br /><br />Este é meu<br /><br /><br /><br><bR /><br />Texto<br /><BR><Br /><br />E o fim<br /><br /><br />"

Function uniqueBr(valor)
	Dim parte
	Dim parteAnterior
	Dim i
	Dim saida
	Dim arrayBr
	valor			= Replace(valor, "<br>", "<br />", 1, -1, vbTextCompare)
	valor			= Replace(valor, "<br />", "<br />", 1, -1, vbTextCompare)
	arrayBr		= Split(valor, "<br />", -1, vbTextCompare)
	For i = 0 To Ubound(arrayBr)
		parte = arrayBr(i)	
		If parteAnterior <> parte Then	
			saida = saida & parte & "<br />"
		End If	
		parteAnterior = arrayBr(i)
	Next
	saida = Replace(saida, "<br /><br />", "<br />", 1, -1, vbTextCompare)
	If Right(saida, 6) = "<br />" Then
		saida = Mid(saida, 1, Len(saida) - 6)
	End If
	uniqueBr = saida
End Function

Response.Write uniqueBr(valor)

%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

imaginei que so fosse conseguir com funcao 

 

valeu, vou testar

 

mas nao sou bom com expressao regular, vou depender de você de novo :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas voce detectava os brs seguidos?

 

se sim bastaria um loop while com o replace

 

WHILE INSTR(CAMPO,"<br /><br />",1) > 0
   REPLACE(CAMPO,"<br /><br />","<br />")
WEND

Compartilhar este post


Link para o post
Compartilhar em outros sites

ja testei assim REPLACE(CAMPO,"<br /><br />","<br />"), e se tiver 3 br ele deixa 1

 

 

Fala ae Desisto.... o que você não pode fazer é desistir kakakaka

 

 

Verifica esta gambiarra que te envio abaixo kakakaka... acho que funciona... já fiz alguns testes e deu certo, dando até 10 "Enters" ele tirou os <BR>:

 

<%

if request("acao")="verifica" then

texto = request("texto")

 

texto = Replace(texto, VbCrLf, "<br>")

texto = Replace(texto, "<br><br><br><br>", "<br>")

texto = Replace(texto, "<br><br><br>", "<br>")

texto = Replace(texto, "<br><br>", "<br>")

response.Write("<strong>Texto Enviado:</strong><br>")

response.Write(texto)

 

end if

%>

 

<form action="?acao=verifica" method="post">

<textarea name="texto" cols="50" rows="5" id="texto"></textarea>

<input name="" type="submit" value="enviar">

</form>

 

 

 

Faça os testes e depois informa se deu certo!! kakakaka

 

 

OBS: A função do Jonathan funciona perfeitamente... o que eu fiz foi uma gambiarra

 

Flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

valeu douglasdamame, desisti nao hehehehe

 

acho que a funcao do jonathandj serve melhor pro caso

 

usar replace da forma tradicional nao esta funcionando

 

 

 

 

mas valeu a todos

Compartilhar este post


Link para o post
Compartilhar em outros sites

fazendo por regular expression, você terá mais produtividade

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.