But your comparison isn't fair. You let the regex do way
much work than needed. There's no need to parse the entire
line, and only assign if there are exactly four fields - you
aren't doing that for the split cases either. Also,
you only have one set of parens, yet you do four assignments.
Picking a simpler regex, and doing just one assignment
improves the speed with 50%!
$a=$1 if $myvar =~ /^[^,]+,([^,]+)/
Still not as fast as the split, but it shows that
proper Benchmarking is an art.
-- Abigail
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|