Danach nichts mehr, da nach den letzten 3 [0-9] jeweils ein ? steht.
Das Fragezeichen sagt nur aus, es KANN noch eine Zahl folgen muss aber nicht. Siehe
hier
"kann muss aber nicht" sicher - aber entscheidend dafür ist das + - das bedeutet 1 oder mehrfach
Wenn man das isoliert betrachtet [0-9]+.? bedeutet 0. oder 00. oder 001. oder 12331233312. oder 123123133123 oder 12222222222222222222222222222222222222222222222222222222222222222222222222222.
Das ist nicht was du willst - wenn du nur dreiergruppen erlauben willst, dann kannst du auf ([0-9]{3}.?){0,2} als Untermuster prüfen. Du willst bei den Ziffergruppe in der mitte ja exakt drei Ziffern optional gefolgt von einem Tausendertrennzeichen und diese Wiederholung 0, 1 oder 2x