Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Re^2: string matching

by ungalnanban (Pilgrim)
on Feb 27, 2010 at 09:53 UTC ( #825647=note: print w/replies, xml ) Need Help??

in reply to Re: string matching
in thread string matching

We can match this requirement in single line.
use strict; use warnings; open(FH,"data"); foreach ( <FH>){ if ( $_ =~ m/^https.*[^\/]\n$/ ) { print $_; } }

Replies are listed 'Best First'.
Re^3: string matching
by Your Mother (Chancellor) on Feb 27, 2010 at 20:25 UTC

    I think you missed the point and an i modifier.

    while ( <DATA> ) { print if /\Ahttps.*[^\/]\n\z/; } __DATA__ HTTPS:// httpsux

    Gives these which are either completely invalid or "end" with a trailing slash since the fragment and the empty query string are irrelevant to the URI path.


    If you know for a fact that your data set is simple/normalized enough, you could use a straightforward regular expression. URI is simple and robust however so not using it is just sloth and it will eventually bite you or the dev who inherits your code. Trusting input data to be well-formed is risky and only appropriate in one-offs.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://825647]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (4)
As of 2016-09-25 04:14 GMT
Find Nodes?
    Voting Booth?
    Extraterrestrials haven't visited the Earth yet because:

    Results (463 votes). Check out past polls.