Hej
Mam plik tekstowy i chciałbym wyginając z niego pewne informacje problem z tym ze zbudowane prze zemnie wyrażenia regularne nie działa to znaczy nie zwraca wszystkich wyników.
Postać pliku:
FIRST_SECTION:
1 16.47 96.10
2 16.47 94.44
3 20.09 92.54
4 22.39 93.37
5 25.23 97.24
SECOND_SECTION:
1 0
2 7
3 30
4 16
5 9
6 21
Chciałbym pobrać wszystkie liczby z pierwszej sekcji (z pobieraniem z drugiej sobie poradziłem). Przy założeniach:
- liczby w pierwszej kolumnie to zawsze int (mogą byc poprzedzone 0 lub wiecej spacji);
- liczby w drugiej i trzeciej kolumnie moga być wartościami int lub double (poprzedzone jedną lub więcej spacji).
Moje wyrażenie regularne:
Scanner s=new Scanner(input);
if(s.findInLine("(.\\d+) *([0-9.]+) *([0-9.]+)")!=null){
MatchResult result = s.match();
for(int i=1;i<result.groupCount();i+=3)
System.out.println(result.group(i)+" "+result.group(i+1)+" "+result.group(i+2));
continue;
}
oczywiście cały if odbywa sie w pętli :)