[resolvido]Problema com String

3 respostas
xandevieira

Fiz este exemplo:

public class Teste {

	public static void main(String[] args) {
		Teste teste = new Teste();
		String text = "1.1.01.001.0001             CAIXA";
		
		System.out.println("text 	                "+text);
		System.out.println("teste.separatePre(text) "+teste.separatePre(text));
		System.out.println("teste.separatePos(text) "+teste.separatePos(text));
		System.out.println("teste.reduzido(text)    "+teste.reduzido(text));
	}
	
    public String separatePre(String text){
    	return text.substring(0, text.substring(text.indexOf(" ") + 1).length());
    }
    
    public String separatePos(String text){
    	return text.substring(text.indexOf(" ") + 1).trim();
    }
    
    public String reduzido(String text){
    	return separatePre(text).replaceAll(".", "").trim();
    }

}

vejam a saida
text 1.1.01.001.0001 CAIXA
teste.separatePre(text) 1.1.01.001.0001
teste.separatePos(text) CAIXA
teste.reduzido(text)

nao entendi pq o teste.reduzido(text) esta saindo em branco, alguem tem alguma ideia?

vlw

3 Respostas

sf.marcius

no método String.replaceAll(arg0, arg1), arg0 é uma String representando uma expressão regular (regex)
e vc fez:

separatePre(text).replaceAll(".", "").trim()

e o ponto em regex significa qualquer caractere.

acredito que se vc fizer:

separatePre(text).replaceAll("\.", "").trim()

dará certo.

de uma olhada em http://java.sun.com/j2se/1.5.0/docs/api/java/util/regex/Pattern.html

feito!

humberto.lima

Olá, se nao me engano, o parametro do replace é uma expressão regular e o ponto representa qualquer char.

[]´s

Humberto Lima

xandevieira

poxa, não me liguei no “.”, era isso mesmo, vlw galera

Criado 6 de janeiro de 2009
Ultima resposta 6 de jan. de 2009
Respostas 3
Participantes 3