@ {@;s@@ },@;s@\(.*\)@ "certUrl":"\\1","certNr":"\\2",@;s@\(.*\)
\(.*\)
\([0-9]*\) \([^<]*\)\(
\)\?@ "name":"\\1","address":"\\2","postalCode":"\\3","city":"\\4"@;s@\(.*\)
\(.*\)@ "name":"\\1","type":"\\2"@' \ | sed 's@"certUrl":"\(/[^"]*\)"@"certUrl":"https://lkv.at\\1"@;s@"certNr":"[^0-9]*0\?\([0-9]\{7\}\|[0-9]\{1,4\}\|[0-9]\{7,\}\)_[^"]*"@\\0,"id":"\\1"@;s@"id":"\([0-9]\{7\}\)"@\\0,"lfbisNr":"\\1"@;s@"id":"\([^"]\{,6\}\|[^"]\{8,\}\)"@\\0,"lfbisNr":null@' \ | sed 's@"certUrl":"\([^"]*\)","certNr":"\([^"]*\)",@"certificates":[{"pdfUrl":"\\1","nr":"\\2"}],\\n @' \ | perl -ne 'BEGIN { our \$N = 8; our @buf; } push @buf, \$_; if (@buf > \$N) { print shift @buf; } my \$chunk = join "", @buf; if (\$chunk =~ /(}],\n(?:.*\n){6}\s*"name":"[^"]*","type":)/) { \$chunk =~ s/(}],\n((?:.*\n){2})(?:.*\n){2}\s*"certificates":\[\{"pdfUrl":"([^"]*)","nr":"([^"]*)"\}\],\n.*\n\s*"name":"[^"]*","type":"([^"]*)")/},{"pdfUrl":"\$3","nr":"\$4","type":"\$5"}],\n\$2/; @buf = map { "\$_\n" } split /\n/, \$chunk; } END { print for @buf; }' \ | grep -B3 -A1 --no-group-separator '"postalCode":"$postalCode' | grep -B2 -A2 --no-group-separator '"lfbisNr":$lfbisNr' \ | sed '\$s/.$//' | sed 's@\s*",@",@g;s@:"\s*@:"@g' EOF); echo "]}\n";