#!perl -lp
y/() \t/<>/d;for(s/(?|\d)-?\d+/<$&>/g;s/<(<[^>]+>)>/$1/||s@>([*/]|(.))<([^<>]+)>(?(2)(?![*/]))@ $3 $1>@;){}y/<>//d
|
There was invisible "\n" in "links" browser in previously rejected version. Got new one, also improved.
#!perl -lp
y/() \t/<>/d;for(s/(?\d])-?\d+/<$&>/g;s/<(<[^>]+>)>/$1/||s@>([/*]|([+-]))<([^<>]+)>(?(2)([^*/]|$))@ $3 $1>$4@;){}y/<>//d
|
old version, but improved
This only seems to remove whitespace. For example the first test: Input: 1 - - 2 Output: 1--2
#!perl -lp
y/() \t/<>/d;for(s/(?\d])(-?\d+)/<$1>/g;s/<(<[^>]+>)>/$1/||s@>([/*]|([+-]))<
([^<>]+)>(?(2)([^*/]|$))@ $3 $1>$4@;){}y/<>//d
|
It's my first try to play perlgolf
Looking good!
#!perl -lp
y/() \t/<>/d;s/(?\d])(-?\d+)/<$1>/g;for($a="<([^<>]+)>";s/<$a>/<$1>/||s@$a([
/*]|([+-]))$a(?(3)([^*/]|$))@<$1 $4 $2>$5@;){}y/<>//d
|