s[((\w+://|www\.|WWW\.)[a-zA-Z0-9\.\@:-]+[^\"\'>< \r\t\n]*)] { local $_ = $1; my $scheme = $2; s/// if (my $trailing) = /([.,!?()\[\]]+$)/; s/&(?!\x23?\w+;)/&/g; s/\"/"/g; my $href = ($scheme =~ /www\./i ? "http://$_" : $_); qq{$_$trailing}; }eg;