develooper Front page | perl.perl6.users | Postings from September 2018

Re: tip: that annoying character at the end

Thread Previous | Thread Next
Brad Gilbert
September 15, 2018 00:43
Re: tip: that annoying character at the end
Message ID:
You can just remove the control characters

   my $x=""~chr(7)~chr(138);
   $x .= subst(/<:Cc>+ $/,'');
   say $x;

Note that 13 is carriage return and 10 is newline

If the only ending values are (13,10), 13, or 10
you can use .chomp to remove them

   my $x=""~chr(13)~chr(10);
   $x .= chomp;
   say $x;
On Fri, Sep 14, 2018 at 5:22 PM ToddAndMargo <> wrote:
> Hi All,
> A tip to share.
> I work a lot with downloaded web pages.  I cut
> out things like revision numbers and download
> locations.
> One of the things that use to drive me a bit nuts was that
> web pages can come with all kind of weird line terminators.
> I'd wind up with a link location that bombed because
> there was some weird unprintable character at the end.
> Now there are routines to chop off these kind of things,
> but they don't always work, depending on what the weird
> character is.
> What I had done in the past as to dump the page to a file
> and use a hex editor to figure out what the weird character
> was.  I have found ascii 0, 7, 10, 12, 13 and some other weird
> ones I can't remember.  They often came is combinations too.
> Then cut the turkey out with a regex.  It was a lot of work.
> Now-a-days, it is easy.  I just get "greedy" (chuckle).
> I always know what end of the string should be: .zip,
> .exe, .rpm, etc..  So
>     $Str ~~ s/ ".zip"  .* /.zip/;
>     $ p6 'my $x=""~chr(7)~chr(138); $x~~s/ ".zip" .* /.zip/; say
> "<$x>";'
>     <>
> Problem solved.  And it doesn't care what the weird character(s)
> at the end is/are.
> :-)
> Hope this helps someone else.  Thank you for all the
> help you guys have given me!
> -T

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About