Używam skanera i separatora do tokenizacji mojego pliku .txt (to zadanie domowe, które muszę zrobić). Pierwsza wersja pliku wygląda następująco:Dilimiter Java Dilimiter
5,5,5,6,5,8,9,5,6,8, good, very good, excellent, good
7,7,8,7,6,7,8,8,9,7,very good, Good, excellent, very good
8,7,6,7,8,7,5,6,8,7 ,GOOD, VERY GOOD, GOOD, AVERAGE
9,9,9,8,9,7,9,8,9,9 ,Excellent, very good, very good, excellent
7,8,8,7,8,7,8,9,6,8 ,very good, good, excellent, excellent
6,5,6,4,5,6,5,6,6,6 ,good, average, good, good
7,8,7,7,6,8,7,8,6,6 ,good, very good, good, very good
5,7,6,7,6,7,6,7,7,7 ,excellent, very good, very good, very good
I Użyłem useDelimiter("[ ]*(,)[ ]*")
sekund wersja pliku wygląda następująco:
5 5 5 6 5 8 9 5 6 8 good, very good, excellent, good
7 7 8 7 6 7 8 8 9 7 very good, Good, excellent, very good
8 7 6 7 8 7 5 6 8 7 GOOD, VERY GOOD, GOOD, AVERAGE
9 9 9 8 9 7 9 8 9 9 Excellent, very good, very good, excellent
7 8 8 7 8 7 8 9 6 8 very good, good, excellent, excellent
6 5 6 4 5 6 5 6 6 6 good, average, good, good
7 8 7 7 6 8 7 8 6 6 good, very good, good, very good
5 7 6 7 6 7 6 7 7 7 excellent, very good, very good, very good
I nie mogę wymyślić co regexp pomóż mi oddzielać liczby od spacji i słów przecinkiem. Zasadniczo potrzebuję tablicy z 14 wartościami (bardzo dobra jest pojedyncza zmienna).
Uwaga: istnieje wiele spacji (odbywa się to w celu utrudnienia nam działania).
Więc każda pomoc byłaby doceniona.
P.S. Jesteśmy używać wyłącznie Separatory tylko (nie dzieli etc ..)
Istnieją 'przestrzeń' (\ s) i " słowo "(\ w) i" cyfra "(\ d) i" granica słowa "(\ b) klasy znaków dla wyrażenia regularnego, które mogą ci pomóc. –
Czy chcesz wstawić przecinek między ostatnią liczbą a pierwszym słowem? – nattyddubbs
Nie muszę dodawać niczego do pliku, po prostu muszę wyodrębnić wartości i umieścić je w wielowymiarowej tablicy, w tym przypadku byłoby to int [8] [14], słowa zostaną zastąpione odpowiednimi liczbami. –