Jump to content
Gabriel Jansen

[Colaboração] Replace entre caracteres.

Recommended Posts

Boa tarde!

 

Não sei se seria o lugar correto mas queria deixar uma pequena colaboração, em meio a pesquisa na internet não achei uma forma para o asp clássico de fazer replace entre duas variáveis definida e tentei estudar um pouco sobre replace e não consegui entender ao certo, então apelei.

 

Em meio ao texto pode ser que precise remover algo que está entre o determinada parte do conteúdo, ex: Abacaxi <0,1111> desidratado,  para Abacaxi desidratado.
Criei a função abaixo:

FUNCTION REPLACE_ENTRE(VARIAVEL,INICIO,FIM)
	
		TEXTO=VARIAVEL
		
		INICIA=split(TEXTO,INICIO)
		IF Ubound(INICIA)>"0" Then		
			FINALIZA=split(INICIA(1),FIM)
			REPLACE_ENTRE=INICIA(0)&""&FINALIZA(1)
		ELSE
			REPLACE_ENTRE=TEXTO
		END IF
		
END FUNCTION

Para fazer o replace chama ela dessa forma, caso queira pode fazer a alteração dos caracteres para qualquer um que deseja (desde que haja diferença entre elas tipo: [ , ], <,>, sx, xs):

REPLACE_ENTRE("Variavel que deseja fazer replace","caractere que identifica inicio","caractere que identifica o final")

Quero retirar uma parte do texto onde fica entre os caracteres "[" e "]".

Há quem o faça [mas não o aconselha] por isso não o farei.

 

FUNCTION REPLACE_ENTRE(VARIAVEL,INICIO,FIM)
	
		TEXTO=VARIAVEL
		
		INICIA=split(TEXTO,INICIO)
		IF Ubound(INICIA)>"0" Then		
			FINALIZA=split(INICIA(1),FIM)
			REPLACE_ENTRE=INICIA(0)&""&FINALIZA(1)
		ELSE
			REPLACE_ENTRE=TEXTO
		END IF
		
END FUNCTION

TEXTO="Há quem o faça [mas não o aconselha] por isso não o farei."

TEXTO=REPLACE_ENTRE(TEXTO,"[","]")

Imprimindo a variável ela ficará assim:

Há quem o faça por isso não o farei.

É isso ai :smile:

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By sheepziiin
      Boa tarde colegas !
      Estou quebrando a cabeça com um job para tratamento de logradouros. Segue o raciocínio:  
      Tenho uma lista com todos os endereços do estado de São Paulo, onde os mesmos são extraídos da seguinte forma:
       
      Exemplo:
      AL-AFONSO SCHMIDT/CDM:ED. SOPHIS SANTANA_COM PRUMADA/BLC:A-555-AP - Apartamento: 61 A AL-ANAPURUS/EDI:BOULEVARD/BLC:A-777-AP - Apartamento: 131 AL-ARAPANES/EDI:CDOE,6-5ºANDAR-309-AP - Apartamento: 42 AL-ARAPANES/EDI:COND.ED.MOEMA DUPLEX LIFE-1142-AP - Apartamento: 102 AL-ARAPANES/EDI:COND.ED.MOEMA DUPLEX LIFE-1142-AP - Apartamento: 42 AL-ARAPANES/EDI:PARC BRUMENADI-982-AP - Apartamento: 191 AL-BARROS/EDI:PERVAL-186-AP - Apartamento: 1601 AL-BARROS/EDI:PERVAL-186-BL - Blocos: B AP - Apartamento: 1302 AL-CAETANO,S/CDM:ED. GIARDINO_CDOE_1_ANDAR_11 A 13-165-AP - Apartamento: 63 AL-CAETANO,S/EDI:ESPLENDOR-1234-AP - Apartamento: 71 AL-CAETANO,S/EDI:MAGENTA I_CDOE_1_ANDAR_7 A 10-2575-AP - Apartamento: 94 AL-CALCUTA-195-AP - Apartamento: 02 AL-CAMPESTRE-728-CS - Casa: 1 AL-CASA BRANCA/CDM:BRISTOL-851-CJ - Conjunto: 11 AN - Andar: 01 AL-CASA BRANCA/CDM:SAINT SIMON-667-AP - Apartamento: 11
      Notem que os casos "não tem um padrão" (até tem por tipo de residencia). Utilizei inúmeras postagens aqui do fórum e consegui solucionar os casos para residencias (padrão TIPO_LOG;LOG;COMPL;NUM), no entanto as formulas e soluções aqui indicadas por vocês "param" na primeira sequencia numérica, entretanto para a maioria dos casos, o texto continua com letras, números e caracteres.
       
      Segue o padrão final que preciso chegar.
      Exemplo: AL-AFONSO SCHMIDT/CDM:ED. SOPHIS SANTANA_COM PRUMADA/BLC:A-555-AP - Apartamento: 61 A
      Resultado Tratado: AFONSO SCHMIDT 555
       
      Desde de já muito obrigado pelos retornos que certamente virão.
    • By stumpy
      Bom dia gente,
       
      estou aqui brincando com o ASP Clássico mas me deparei com um problema antigo mas que eu não lembro como corrigir  que é a acentuação  eu tentei uma dica mais cedo mas não deu certo  ai fiz uma função para fazer o replace mas não ta rolando alguém tem alguma ideia ?
       
      o testo esta na base como " Proximo "
       
      porém quando vai pra tela aparece assim 
       
      pr&oacute;ximo
       
      obrigado pela força
    • By Gustavo2503
      Como trocar virgula por ponto e ponto por virgula de uma mesma string?
    • By Tiagotdg
      Boa tarde, tenho uma duvida e gostaria da ajuda de vocês.
       
      tenho uma string que contem $string='
        <div dir="ltr"> <p><span style="color:#0c4685">. Seguro de Vida por Morte Acidental - %%beneficio%%<br> . Seguro Invalidez por Acidente - %%beneficio%% <br> . Auxílio Funeral - R$ %%Valor1%%<br> . Despesas Médicas e odontológicas - R$ %%Valor2%%<br> . Assistência Residencial<br> . Sorteio Mensal: R$ %%Valor3%%<br> . Desconto em medicamentos de 5% a 70% <br> . Cesta Básica 6 mensalidades de R$ 120,00 </span><br> <span style="color:#0c4685">.</span><span style="color:#0c4685"> Assistencia juridica</span></p> <br> </div>  
      ';
       
      Preciso subistituir o que esta entre  %%o que esta aqui%% pelo valor de uma  variavel ex:
      %%beneficio%% ='159753' %%Valor1%% = 1; %%Valor2%% = 3  
      e assim por diante, eu recebo essa variáveis do banco de dados e devo substitutivas no texto.

      se alguém puder ajudar eu agradeço. 
       
    • By Luis Fernando R. Valle
      Boa tarde.
      Tenho um agendamento para inserir. Mas antes de inserir, preciso validar para ver se não há agendamento no intervalo selecionado
       
      Hoje estou fazendo 2 campos para data inicial e final e 2 campos para horario inicial e final, mas não estou conseguindo.
      Se puder me passar se a melhor forma e o datetime e como fazer essa consulta no banco.
       
      Desde já agradeço.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.