From 38f9d7bf2a82341db06e92e3289748f386d0abfe Mon Sep 17 00:00:00 2001 From: Ruben Westerberg Date: Sun, 21 Jul 2019 08:11:15 +1000 Subject: Added default case for ch2. + Readme --- challenge-017/ruben-westerberg/README | 1 + challenge-017/ruben-westerberg/perl5/ch-2.pl | 5 +++-- challenge-017/ruben-westerberg/perl6/ch-2.p6 | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/challenge-017/ruben-westerberg/README b/challenge-017/ruben-westerberg/README index 36e90655e8..14ffe9e086 100644 --- a/challenge-017/ruben-westerberg/README +++ b/challenge-017/ruben-westerberg/README @@ -9,3 +9,4 @@ calculated value and total recursion count as last output. ch-2.pl and ch-2.p6 === Run the program with a command line argument (in single quotes). The argument is a URL to validate. +With no command line argument, uses builtin test URI diff --git a/challenge-017/ruben-westerberg/perl5/ch-2.pl b/challenge-017/ruben-westerberg/perl5/ch-2.pl index 4441008227..b0b1e2c592 100755 --- a/challenge-017/ruben-westerberg/perl5/ch-2.pl +++ b/challenge-017/ruben-westerberg/perl5/ch-2.pl @@ -10,13 +10,14 @@ my $qkey=qr/[\w\d]+/; my $qpair=qr/$qkey\=$qval/; my $query=qr/$qpair(?:\&$qpair)*/; my $port=qr/\d+/; -my $path=qr/(\/(?:[\w\d\.]+\/?)+)/; +my $path=qr/(\/(?:[\w\d\.]+\/?)*)/; my $host=qr/[\w\d\.]+/; my $user=qr/[\w\d]+/; my $pass=qr/[\w\d]+/; my $auth=qr/\/\/(?:($user)(?:\:($pass))?\@)?($host)(?:\:($port))?/; my $scheme=qr/([a-z][a-z\-\.\+]+)/; -my $match=$ARGV[0]=~/$scheme\:$auth?$path(?:\?($query))?(?:\#($frag))?/; +my $URI='jdbc://user:password@localhost:3306/pwc?profile=true#h1>'; +my $match=($ARGV[0]//$URI)=~/$scheme\:$auth?$path(?:\?($query))?(?:\#($frag))?/; die "Not a URI\n" unless $match; my @out=( "Scheme: ".($1//""), diff --git a/challenge-017/ruben-westerberg/perl6/ch-2.p6 b/challenge-017/ruben-westerberg/perl6/ch-2.p6 index 9ec56c4730..2462d35b9f 100755 --- a/challenge-017/ruben-westerberg/perl6/ch-2.p6 +++ b/challenge-017/ruben-westerberg/perl6/ch-2.p6 @@ -17,7 +17,7 @@ grammar URI { token fragment { (+)}; } -my $m=URI.parse(@*ARGS[0]); +my $m=URI.parse(@*ARGS[0]//"jdbc://user:password@localhost:3306/pwc?profile=true#h1"); die "Not a URI\n" unless $m; given $m { put "Scheme: {.}"; -- cgit