Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

who says perl is not readable?

Name: Anonymous 2015-11-06 14:25

my $rxParsePath = qr
{(?x) # Use extended regular expression syntax to
# allow comments and white space
^ # Anchor pattern to beginning of string
(?=.) # Zero-width look ahead assertion to ensure
# that there must be at least one character
# for the match to succeed
(.*/)? # A memory grouping (1st) for path, greedy
# match of any characters up to and including
# the rightmost slash (the path part) with a
# quantifier of '?' (0 or 1), i.e. there
# may or may not be a directory part
( # Open memory grouping (2nd) for file name
(.*?) # A memory grouping (3rd) for file name stub
# of a non-greedy match of any character
# without a quantifier since, if there is a
# file name part, at least some of it will
# form a stub otherwise it would be a dot-file
( # A memory grouping (4th) for file name
# extension
(?<=[^/]) # zero width look behind assertion such
# that following pattern will only succeed
# if preceded by any caracter other than
# a slash '/'
\.[^.]+ # a literal dot '.' followed by one or more
# non-dots
)? # Close memory grouping (4th) with a quantifier
# of '?' (0 or 1), i.e. there may or may not
# be a file name extension part
)? # Close memory grouping (2nd) with a quantifier
# of '?' (0 or 1), i.e. there may or may not
# be a file name part
$ # Anchor pattern to end of string
};

Name: Anonymous 2015-11-09 19:37

>>16
The ellipsis was a prompt for you to finish the sentence as a continuation of the statement in >>14.
Acceptable responses include ``need not be correct, obviously'' and ``is unrelated to the problem domain''.

Name: Anonymous 2015-11-09 20:38

>>18
Let's go through the conversation I would have liked to have had with you.

A. Why? Why is it the job of the regex to determine ".bar" is actually the whole filename? Dealing with such a platform-specific special case would logically be the job of the enclosing program.
B. Because your code should be correct.
A. And the specification...?
B. The specification need not be correct, obviously. The specification is unrelated to the problem domain.

Now can you please stop ruining my fantasies?

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List