Witajcie,

Chcę pisać sobie loader .obj (chyba już z pół roku xD) i na szczęście natrafiłem na regexp niedawno bo chciałem pisać samemu przetwarzanie tekstu (i bym tego nie zrobił za kolejne pół roku). Ułożyłem sobie wyrażenie, które pasuje do różnych poleceń w .obj (mtllib|v|vn|vt|g|usemtl|s|f)(( +)(\S+))+ https://regex101.com/r/qB6vS5/2 (w tym linku pokazane jest na przykładowym .obj). Jak widać na wcześniejszym linku nie rozdziela argumentów na grupy. Powinno być razem 10 grup, a tylko ostatni argument z polecenia zostaje pogrupowany, a pozostałe trafiają do grupy #0. Jak to poprawnie napisać?
Grupy powinny wyglądać wg. pierwszej linii przykładu tak:
#0: v -0.2942 0.3212 -1.6468
#1: v
#2: " -0.2942"
#3 i 4: "<spacja>" i -0.2942
#5: " 0.3212"
#6 i 7: "<spacja>" i 0.3212
#8: " -1.6468"
#9 i 10: "<spacja>" i -1.6468