if (my $tag, %attributes) =  $string =~ m~  <  ([a-zA-Z]+) # tag, z.B. td => $1  (?: # gruppierende klammer (speichert nicht), enthaelt immer ein name/wert-paar  \s*  ([a-zA-Z]+) # name => $2, $4, $6, ...  \s*=\s*  \"(.+?)\" # wert => $3, $5, %7, ...  \s*  )* # ende der gruppierenden klammer; 0-Mal oder oefter  \s*  /? # optional: einfacher tag wie bei  > ~x) {  # und irgendwas damit machen, z.B. ausgeben  print "TAG: $tag\n";  foreach (keys %attributes) {    print "  $_ => $attributes{$_}\n";  } } # if