Você sabe usar a função Replace() do ASP?

Uma função que parece ser bem simples, porém nem todos sabem utilizar por completa.

Nesse artigo vou mostrar como usar corretamente e com eficiência essa “simples função”.

Todos nós programadores ASP sabemos usar simplificada a função Replace(), segue um exemplo:

<%
dim frase frase = “Por uma internet sempre criativa e dinâmica” response.write(replace(frase, “sempre”, “mais”))
%> 

Uma maneira simples, usamos o texto que está em pauta seguido da palavra que queremos substituir e depois da palavra que queremos colocar no lugar.

replace(texto em pauta, palavra que sai, palavra que entra) 

Resultado o Script: “Por uma internet mais criativa e dinâmica”

OBS: a função replace() é "Case Sensitive" se quiser substituir "A" por "a", onde existir o "A" maiúsculo será substituído pelo "a" minúsculo.

Vamos para a parte que interessa mais:
No texto “Por uma internet mais criativa e dinâmica” queremos que a letra “i” de “internet” seja maiúscula e não as outras, como fazer isso?
Seguindo essa sequência “replace(texto em pauta, palavra que sai, palavra que entra)”, existem mais três parâmetros opicionais que complementam a função:

* Posição inicial;
* Count (um contador que especifica o número de substituíção);
* Comparador de Strings (caso binário de padrão “zero” ou texto).

Segue o exemplo:
<%
dim frase frase = “Por uma internet mais criativa e dinâmica” response.write(replace(frase, “i”, “I”, 1,1,1))
%>  

Resultado do Script: “Por uma Internet mais criativa e dinâmica”

No parâmentro inicial você também pode usar ele como um “cortador de letras”, exemplo: Eu não quero mais que apareça a palavra “Por”, então cortamos três letras da frase, caso queira cortar o espaço também e usar quatro no contador fiquem a vontade, mais para isso usamos a função trim() que não vem ao caso.

Segue o exemplo:
<%
dim frase frase = “Por uma internet mais criativa e dinâmica” response.write(replace(frase, “u”, “U”, 4,1,1))
%>

Resultado do Script: “Uma internet mais criativa e dinâmica”

Notem que coloquei no valor da posição o número “4? (quatro) e explicarei por que.
O valor padrão da posição inicial vem de default “1? (um) e não “0? (zero) como estamos acostumados em outras funções por isso adicionamos mais um valor no contador no caso “3 + 1?.

E o que falar da última posição o “Comparador de Strings”)

Olha como funciona:

Segue o exemplo:
<% dim frase frase = “Elegante” response.write(replace(frase, “e”, “&euro;”, 1,1,0)) %>

Se eu deixar o valor inicial como “1? (um), e pegar só uma letra “e” e colocar no Comparador de Strings “0? (zero) o resultado sai:
Resultado do Script: “El€gante” 
 

Ele não considerou a letra maiúscula “E” inicial, mais se eu trocar o último parâmentro para “1? (um), vamos ver no que gera.

Segue o exemplo:
<% dim frase frase = “Elegante” response.write(replace(frase, “e”, “&euro;”, 1,1,1)) %>  

Resultado do Script: “€legante”

Ele agora sim reconhece o primeiro “e” e faz a alteração, tenha muito cuidado quando for usar o Comparador de Strings, oks?

Abraços amigos, e vamos tomar conhecimento da linguagem para não fazer trabalho desnecessário:

Até o próximo artigo.

Escrito por Ted k' on abril 4, 2009. Arquivado em ASP.net. Você pode seguir as respostas a esse artigo pelo RSS 2.0. Você pode deixar respostas para esse artigo

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>