oi. gostaria muito de saber porque usa esse trecho de códiog? para que ele serve? matcher.replaceFirst("$1");
Ahh também queria saber o que é o tal ? interrogação significa e um exemplozinho
oi. gostaria muito de saber porque usa esse trecho de códiog? para que ele serve? matcher.replaceFirst("$1");
Ahh também queria saber o que é o tal ? interrogação significa e um exemplozinho
matcher.replaceFirst("$1");
Vou dar um exemplo melhor. Digamos que você quisesse converter, em uma string, todas as datas yyyy-mm-dd em dd/MM/yyyy. Alguma coisa assim:
String s = "ブラジル連邦共和国- 住所: R.Direita, 247-Se, CEP 01002-001, Sao Paulo-SP, Brasil - 売り場面積- 660 m2 - オープン - 2012-12-22 ";
e quisesse converter a string na seguinte:
"ブラジル連邦共和国- 住所: R.Direita, 247-Se, CEP 01002-001, Sao Paulo-SP, Brasil - 売り場面積- 660 m2 - オープン - 22/12/2012 ";
Uma forma de fazer isso é reconhecer o padrão ano-mês-dia, e ver que ele tem 3 pedaços - o ano, o mês e o dia. Então, na hora de especificar o padrão, devemos separar os três pedaços (ou “groups” na documentação de java.util.regex.Pattern).
O padrão para reconhecer seria:
Pattern pat = Pattern.compile ("([0-9]{4})-([0-9]{2})-([0-9]{2})");
note que os pedaços são separados usando-se os parênteses.
Para efetuar a troca, o $ é especial - $1 indica o primeiro grupo, $2 o segundo grupo, $4 o terceiro grupo - é possível listar até 9 grupos.
Então, para trocar a data para o formato desejado - dia/mês/ano, você pode fazer:
String t = pat.matcher (s).replaceAll ("$3/$2/$1");
minha nossa!! ! que negócio dificil é esse? rss vou estuadr mais :roll: