in reply to Re: Removing \x092 with a regex
in thread Removing \x092 with a regex

Many thanks for your efforts

I added a test suggested by kwaping above.

#!/usr/bin/perl use strict; use warnings; my $str = q|cat’s|; printit($str, 'original'); (my $str1 = $str) =~ s/\x092/'/; printit($str1, 'hex only two nybbles'); (my $str2 = $str) =~ s/\x92/'/; printit($str2, 'seems good here'); (my $str3 = $str) =~ s/\x{092}/'/; printit($str3, 'seems good here'); (my $str4 = $str) =~ tr/\x{092}/'/d; printit($str4, 'seems good here'); (my $str5 = $str) =~ s/’/'/; printit($str5, 'added'); sub printit { my ($v, $msg) = @_; my $h = unpack "H*", $v; $h =~ s/(..)/0x$1 /g; print "$h\t$v\t$msg\n"; } __END__ 0x63 0x61 0x74 0xe2 0x80 0x99 0x73 cat’s original 0x63 0x61 0x74 0xe2 0x80 0x99 0x73 cat’s hex only two nybbles 0x63 0x61 0x74 0xe2 0x80 0x99 0x73 cat’s seems good here 0x63 0x61 0x74 0xe2 0x80 0x99 0x73 cat’s seems good here 0x63 0x61 0x74 0xe2 0x80 0x99 0x73 cat’s seems good here 0x63 0x61 0x74 0x27 0x73 cat's added

Replies are listed 'Best First'.
Re^3: Removing \x092 with a regex (utf-8 source)
by tye (Sage) on Jul 26, 2005 at 17:12 UTC

    You're saving your Perl script as a UTF-8 file but not telling Perl that it is supposed to be reading the script as such. (I bet)

    - tye        

      tye++

      0x63 0x61 0x74 0x92 0x73 cat’s original 0x63 0x61 0x74 0x92 0x73 cat’s hex only two nybbles 0x63 0x61 0x74 0x27 0x73 cat's seems good here 0x63 0x61 0x74 0x27 0x73 cat's seems good here 0x63 0x61 0x74 0x27 0x73 cat's seems good here 0x63 0x61 0x74 0x27 0x73 cat's added
      Many thanks