String teste = “000000000012345”;
Preciso formatar essa String, para que no meu relatório apareça somente os cinco ultimos caracteres.
Para fazer o relatório estou usando iReport.
String teste = “000000000012345”;
Preciso formatar essa String, para que no meu relatório apareça somente os cinco ultimos caracteres.
Para fazer o relatório estou usando iReport.
vc vai exibir sempre 5 digitos, ou so precisa cortar os zeros?
se for so cortar os zeros, converte com Integer.parseInt(String) e depois joga pra String de novo (gambi)
Oi,
para pegar só as ultimas posições… utilizando uma string sem tranformar…
teste.substring(posicao_inicial, posicao_final);
Tchauzin!
Existe algum jeito de fazer essa conversão ( tirando os zeros a esquerda ) sem ter q fazer essa gambiarra?
Existe 1000 maneiras.Invente uma!
Vc pode pegar as 5 últimas posições(chars), armazenar e descartar o resto por exemplo.Pode usar a substring,pode “splitar”(tirar os zeros)…
Você pode fazer isso:
String teste = "000000000012345";
System.out.println(teste.replaceAll("^0*", ""));
Veja se deu certo ae
Samuel Félix
mas se ele usar esse replace ai, o q acontece se ele tiver um numero
do tipo 000123005? vira 1235? o.O
pra ficar mais elegante entao:
teste = String.valueOf(Integer.parseInt(teste));
ai tu corta os 0 desnecessario e ja fica em String o.O
É… por eqto a ultima idéia está ganhando… =P
Gente obrigado pela ajuda, o iReport já faz isso automaticamente.
Só respondendo ao fabiocsi
Se vc percerber na minha expressão regular o caracter ^ indica que é apenas no início da linha, ou seja 000123005 vai ficar isso: 123005. Se tiver dúvidas quanto a ela, teste!

Essa solução envolvendo o ^ é o que chamamos ai de expressão regular, certo? =)
[]'s
Essa solução envolvendo o ^ é o que chamamos ai de expressão regular, certo? =)[]'s
Isso, e é um “conceito universal” usado para validação e tratamento de textos. Seria mais ou menos isso, com qualquer linguagem “moderna” você pode trabalhar com expressão regular.
Na verdade, eu acho que vai um pouco mais além, a expressão regular é um reconhecedor de padrões, e acho que gerador também(se não me engano), a gente estuda isso em Linguagens formais. Se estiveres interessado em aprender, é muito util, dê uma olhada nessa api da sun:
http://java.sun.com/j2se/1.5.0/docs/api/java/util/regex/Pattern.html
Samuel
Na verdade, eu acho que vai um pouco mais além, a expressão regular é um reconhecedor de padrões, e acho que gerador também(se não me engano), a gente estuda isso em Linguagens formais. Se estiveres interessado em aprender, é muito util, dê uma olhada nessa api da sun:http://java.sun.com/j2se/1.5.0/docs/api/java/util/regex/Pattern.html
Samuel
opA!
vlw felix… muito bom o link q passou nao conhecia expressoes regulares… agora entendi seu replace la :oops:
De nada fabio! Vamos ajudar uns aos outros!
:lol: