Ik heb een klein probleempje waar ik niet uit kom: ik ben met regular expressions textfiles aan het parsen. In deze files staan meerder kolommen, met een vaste lengte. Hier door is het erg gemakkelijk om voor elke rij de kolomwaardes op te splitsen.
Neem bijvoorbeelde deze regel:
Dit parse ik met de expressie:
Nu kan ik dus in java de verschillende groepen makkelijk verder gebruiken. Wat me alleen stoort is de derde groep ([\w ]{5}), dit veld moet ik nu elke keer trimmen om de spaties er uit te krijgen. Ik heb wel het een en ander geprobeerd met subgroepen, maar dat werk dus niet omdat ik dan de groep niet meer direct kan benaderen.
Overigens werkt het zo verder prima, maar ik vroeg me af of het anders kan en misschien leer ik nog iets van een regex goeroe hier.
Neem bijvoorbeelde deze regel:
code:
1
| 100020050108BAY 23 |
Dit parse ik met de expressie:
code:
1
| (\d{4})(\d{8})([\w ]{5})(\d{2}) |
Nu kan ik dus in java de verschillende groepen makkelijk verder gebruiken. Wat me alleen stoort is de derde groep ([\w ]{5}), dit veld moet ik nu elke keer trimmen om de spaties er uit te krijgen. Ik heb wel het een en ander geprobeerd met subgroepen, maar dat werk dus niet omdat ik dan de groep niet meer direct kan benaderen.
Overigens werkt het zo verder prima, maar ik vroeg me af of het anders kan en misschien leer ik nog iets van een regex goeroe hier.