Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Re^2: Pearls (not really) of Perl programming

by revdiablo (Prior)
on Nov 24, 2004 at 21:35 UTC ( #410254=note: print w/replies, xml ) Need Help??

in reply to Re: Pearls (not really) of Perl programming
in thread Pearls (not really) of Perl programming

What's bad about this? Sure, there are other ways to do it, but it doesn't seem particularly egregious to me. For those following along at home, here are some other ways:

$default_title =~ s/(.{50}).*/$1/; $default_title =~ s/./$ctr++<50?$&:""/ge; $default_title = pack "A50", $default_title; $default_title = join "", (split //, $default_title)[0..50];

Personally, I like the original much better than these alternatives. The only other way that I would possibly use is:

substr($default_title, 50) = "";

But substr as an lvalue is not something everyone knows about, so it's not clearly the best option.

Replies are listed 'Best First'.
Re^3: Pearls (not really) of Perl programming
by ihb (Deacon) on Nov 26, 2004 at 02:14 UTC

    More regex solutions: (don't forget the s modifier)

    ($default_title) = $default_title =~ /(.{0,50})/s; $default_title =~ s/(?<=.{50}).*//s;
    I'd also want to add
    substr($default_title, 50, length($default_title), '');
    and second you and the original isn't that bad.


    See perltoc if you don't know which perldoc to read!
    Read argumentation in its context!

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://410254]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (3)
As of 2018-05-27 04:21 GMT
Find Nodes?
    Voting Booth?