in reply to Need help understanding some code ...
Looking at something like
But as others mentioned already, you shouldn't do this as above if trying to clean up the inputted data but use a module that handles things like this in much more detail.
Krambambuli
---
you'll get#!/usr/bin/perl use strict; use warnings; my $temp = 'key1=two_tabs%09%09+other_two_tabs%09%09&key2=three_nulls_ +%00%00%00'; my @pairs = split(/&/, $temp); foreach my $item(@pairs) { my ($key, $value) = split(/=/, $item, 2); $value =~ tr/+/ /; $value =~ s/%(..)/pack("c", hex($1))/ge; $value =~ s/\t/ /g; $value =~ s/\0//g; print "Key: '$key', value: '$value'\n"; }
Key: 'key1', value: 'two_tabs other_two_tabs ' Key: 'key2', value: 'two_nulls_'where the _encoded_ TABs and NULLs are transformed to spaces and respectively eliminated.
But as others mentioned already, you shouldn't do this as above if trying to clean up the inputted data but use a module that handles things like this in much more detail.
Krambambuli
---
|
---|
In Section
Seekers of Perl Wisdom