8.13. Dopasowywanie bloków sekcji pliku INI

Problem

Chcemy dopasować każdy kompletny blok sekcji w ramach pliku INI (tj. nagłówek sekcji i wszystkie pary parametr-wartość wchodzące w skład tej sekcji), aby podzielić ten plik lub przetworzyć poszczególne bloki niezależnie od siebie.

Rozwiązanie

W „8.12. Dopasowywanie nagłówków sekcji pliku INI” opisano techniki dopasowywania nagłówków sekcji plików INI. Aby dopasować całą sekcję, należy początkowo zastosować wzorzec z tamtej receptury i — w przeciwieństwie do stosowanego tam rozwiązania — kontynuować dopasowywanie aż do osiągnięcia końca łańcucha lub znaku [ na początku jakiegoś wiersza (ponieważ znak [ rozpoczynający wiersz wyznacza jednocześnie początek nowej sekcji):

  • ^\[[^\]\r\n]+](?:\r?\n(?:[^[\r\n].*)?)* ...

Get Wyrażenia regularne. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.