From 11146a92205a60d4c4e1ce36741f4ac11c66853d Mon Sep 17 00:00:00 2001 From: Luca Ferrari Date: Mon, 8 Feb 2021 10:05:58 +0100 Subject: Task 1 done. --- challenge-099/luca-ferrari/raku/ch-1.p6 | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 challenge-099/luca-ferrari/raku/ch-1.p6 diff --git a/challenge-099/luca-ferrari/raku/ch-1.p6 b/challenge-099/luca-ferrari/raku/ch-1.p6 new file mode 100644 index 0000000000..00fa7c8c0e --- /dev/null +++ b/challenge-099/luca-ferrari/raku/ch-1.p6 @@ -0,0 +1,12 @@ +#!raku + +sub MAIN( Str $S, Str $P ) { + say "String [$S] with pattern [$P]"; + + # substitute every ? to match a single char + # and every * to match a stream of chars + # and add anchors + my $regexp = '^' ~ $P.subst( '*', '.*' ).subst( '?', '.' ) ~ '$'; + { say 1; exit; } if $S ~~ / <$regexp> /; + say 0; +} -- cgit From 8d64a6ffe62342407c756f086b98244e43d4b92d Mon Sep 17 00:00:00 2001 From: Luca Ferrari Date: Mon, 8 Feb 2021 14:40:48 +0100 Subject: Task 2 done not properly working. --- challenge-099/luca-ferrari/raku/ch-2.p6 | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 challenge-099/luca-ferrari/raku/ch-2.p6 diff --git a/challenge-099/luca-ferrari/raku/ch-2.p6 b/challenge-099/luca-ferrari/raku/ch-2.p6 new file mode 100644 index 0000000000..386d2fdfd4 --- /dev/null +++ b/challenge-099/luca-ferrari/raku/ch-2.p6 @@ -0,0 +1,18 @@ +#!raku + +sub MAIN( Str $S, Str $T ) { + say "String [$S] with pattern [$T]"; + + my $counter = 0; + + my $regexp = $T.comb.join( '.*' ); + + # overlapping search + given $S { + for m:exhaustive/ <$regexp> / -> $match { + $counter++; + } + } + + say $counter; +} -- cgit From 0664b30ef62a48fa5d2106d641eb33cb3b5c717f Mon Sep 17 00:00:00 2001 From: Luca Ferrari Date: Mon, 8 Feb 2021 14:50:10 +0100 Subject: Remove debug output --- challenge-099/luca-ferrari/raku/ch-1.p6 | 2 -- challenge-099/luca-ferrari/raku/ch-2.p6 | 3 --- 2 files changed, 5 deletions(-) diff --git a/challenge-099/luca-ferrari/raku/ch-1.p6 b/challenge-099/luca-ferrari/raku/ch-1.p6 index 00fa7c8c0e..570a3b0c66 100644 --- a/challenge-099/luca-ferrari/raku/ch-1.p6 +++ b/challenge-099/luca-ferrari/raku/ch-1.p6 @@ -1,8 +1,6 @@ #!raku sub MAIN( Str $S, Str $P ) { - say "String [$S] with pattern [$P]"; - # substitute every ? to match a single char # and every * to match a stream of chars # and add anchors diff --git a/challenge-099/luca-ferrari/raku/ch-2.p6 b/challenge-099/luca-ferrari/raku/ch-2.p6 index 386d2fdfd4..a25a297500 100644 --- a/challenge-099/luca-ferrari/raku/ch-2.p6 +++ b/challenge-099/luca-ferrari/raku/ch-2.p6 @@ -1,10 +1,7 @@ #!raku sub MAIN( Str $S, Str $T ) { - say "String [$S] with pattern [$T]"; - my $counter = 0; - my $regexp = $T.comb.join( '.*' ); # overlapping search -- cgit From 6dfe12bed3720406ca147a0c719299739c41a0cf Mon Sep 17 00:00:00 2001 From: Luca Ferrari Date: Mon, 8 Feb 2021 14:50:50 +0100 Subject: Blog references --- challenge-099/luca-ferrari/blog-1.txt | 1 + challenge-099/luca-ferrari/blog-2.txt | 1 + 2 files changed, 2 insertions(+) create mode 100644 challenge-099/luca-ferrari/blog-1.txt create mode 100644 challenge-099/luca-ferrari/blog-2.txt diff --git a/challenge-099/luca-ferrari/blog-1.txt b/challenge-099/luca-ferrari/blog-1.txt new file mode 100644 index 0000000000..57e7046809 --- /dev/null +++ b/challenge-099/luca-ferrari/blog-1.txt @@ -0,0 +1 @@ +https://fluca1978.github.io/2021/02/08/PerlWeeklyChallenge99.html#task1 diff --git a/challenge-099/luca-ferrari/blog-2.txt b/challenge-099/luca-ferrari/blog-2.txt new file mode 100644 index 0000000000..8247db63d4 --- /dev/null +++ b/challenge-099/luca-ferrari/blog-2.txt @@ -0,0 +1 @@ +https://fluca1978.github.io/2021/02/08/PerlWeeklyChallenge99.html#task2 -- cgit