Is your question the text of the comment: "#what two s and three #mean?"?

That's a substitution operator. Normally it would look like s/regexp/replace/. But you can use other delimiters if that makes the regexp easier to read. The reason that this particular regexp uses # instead of /, is because the re itself has an embeded / character in it, and the author chose an alternate delimiter instead of escaping the /.

The trailing 's' tells the regexp engine that '\n' should be treated like any other character, and matched by the '.' metacharacter.

That's the mechanics. Now for the implementation...

That regexp will place into $basename whatever is left after removing as much text as possible before reaching the final '/' character. It's not really a foolproof solution toward getting at the basename of a file. A better solution is to use the File::Basename module like this:

use File::Basename; my( $old, $new ) = @ARGV; if ( -d $new ) { $new .= "/" . basename( $old ); }


Dave


In reply to Re: regular express problem by davido
in thread regular express problem by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.