(Ich habe die Themen zusammen gefuehrt.)
Das Problem habe ich wie schon vorgeschlagen in zwei Schritten geloest. Zuerst normalisiere ich den Input, dann greife ich den entsprechenden Wert raus.
Normalisierungscode:
Code: Alles auswählen
/^[ \t]*#/ { next }
/^[ \t]*$/ { next }
{
gsub(/[ \t]*=[ \t]*/, " = ")
gsub(/,[ \t]+/, "\n")
print
}
(Die ersten beiden Regeln entfernen Kommentar- und Leerzeilen, und sind damit optional.)
Den Wert greife ich dann so heraus:
(``foo'' muss durch den Variablennamen ersetzt werden.)
Als Testinput habe ich Folgendes verwendet:
Code: Alles auswählen
var3 = foo
var4=bar
var1 = 8, var2 = test, name = Icke
var5=fuenf, var6= sechs, var7 =sieben