in reply to Word reverse
Do you necessarily need to unpack the data before using it? Given that nature of what you require, the most natural fix to me would be using a regular expression. Specifically, I would replace every set of four letters with their transposition:
#!/usr/bin/perl use strict; use warnings; my @lines = ('45d2ff76893a0033', '45d239a7dd200116'); for my $line (@lines) { $line =~ s/(.{4})(.{4})/$2$1/g; } print join "\n", @lines;
Update:and since you've changed your spec, a one-liner:
s/(.{4})(.{4})/$2$1/g for @lines;
Note that the new code you've posted does not compile.
Regarding your statement that "Efficiency is critical", that is a bad starting point - premature optimization is the root of all evil. Make it work first. If it is too slow, profile it and attack bottlenecks.
|
|---|