in reply to URL escaping
if ($url_text =~ m/([^;\/?:@&=+\$,A-Za-z0-9\-_.!~*'()])/ ) { $url_sub = sprintf( "%%%02X", ord( $1 ) ); $url_text =~ s/([^;\/?:@&=+\$,A-Za-z0-9\-_.!~*'()])/$url_sub/; }
Update Or , duh, use the s///e modifier (stupid me...)
What I have above won't catch multiple URLs on the same line.$url_text =~ s/([^;\/?:@&=+\$,A-Za-z0-9\-_.!~*'()])/sprintf( "%%%02X", + ord( $1 ) )/ge;
|
|---|