...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
sub transformUnicode{
my @input = @_;
for (@input){
s/\x{2018}/'/g; s/\x{2019}/'/g; # left and right curly single-quote
s/\x{201c}/"/g; s/\x{201d}/"/g; # left and right curly double-quote
# all kinds of hyphens/dashes
s/\x{2011}/-/g; # Non-breaking hyphen
s/\x{2012}/-/g; # Figure dash
s/\x{2013}/-/g; # En dash
s/\x{2014}/-/g; # Em dash
s/\x{2026}/.../g; # Horizontal ellipse
s/\x{200b}//g; # Zero width space, a.k.a. Microsoft Word's optional break
}
return wantarray ? @input : $input[0];
} |