Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight

Re: Extracting the number of %'s in a string

by Zaxo (Archbishop)
on Dec 13, 2007 at 09:46 UTC ( #656782=note: print w/replies, xml ) Need Help??

in reply to Extracting the number of %'s in a string

To count them,

$_=q(aaa%bbbbb%cccccc%ddd); print tr/%//, $/;
prints '3'

To extract their positions;

$_ = 'aaa%bbbbb%cccccc%ddd'; print $-[0], ' ' while /%/g; print $/'
prints "3 9 16".

See perlvar for the @- array magic. You would push those values to an array, instead of printing, for further use.

After Compline,

Replies are listed 'Best First'.
Re^2: Extracting the number of %'s in a string
by moritz (Cardinal) on Dec 13, 2007 at 10:08 UTC
    The counting solution will give a wrong result if the string has a trailing %, because the OP wants the number of %s followed by another character.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://656782]
[marioroy]: The MCE::Hobo::Pool module will come later.
[Corion]: marioroy: Oh, that's always cool, having API-compatible modules. This makes testing and comparing things much easier
[marioroy]: IPC in MCE::Shared can handle 400k (sends) per second. That's seems a lot for being a pure-Perl module. After making the release, will come back and post a solution for a node by a fellow wanting faster logging.
[Corion]: While working on WWW::Mechanize:: Chrome, I had the suspicion that AnyEvent was doing something wrong, but I was able to swap it out for Mojolicious and the error persisted.
[Corion]: Of course, the error was in my own code ;)
[marioroy]: Corion, start and start_child in MCE::Hobo::Manager return a MCE::Hobo object, whereas P::FM returns the PID. I can have it return the PID though. I tried Hobo::Manager with several P::FM modules, just changed P::FM to MCE::Hobo::Manager and it works.

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (6)
As of 2017-05-26 08:36 GMT
Find Nodes?
    Voting Booth?