Awk: Übungen: RegExp: LsgW30

Die Sprache ist nicht regulär, sondern nur kontextfrei!

test.awk:

#!/usr/bin/awk -f
/^[WF]*$/ {
       if (zaehle($0,"F") % 2 == 0 && zaehle($0,"W") % 2 == 0) print $0
}

function zaehle(s, c) {
       n = 0
       if (substr(s, 1, 1) == c) n = 1
       if (length(s) > 1)  n = n + zaehle(substr(s,2),c)
       return n
}

Ausführen:

echo "WFWFWW" |awk -f test.awk

← zurück