diff options
| author | Mark Anderson <mark@andemark.io> | 2025-11-10 09:13:23 +0000 |
|---|---|---|
| committer | Mark Anderson <mark@andemark.io> | 2025-11-10 09:13:23 +0000 |
| commit | 38b8cc06182321a196a4455cefde03bd0c2df53e (patch) | |
| tree | d99e5232c346dec93274346ba3418fa7a8cbf7fb | |
| parent | 32186bfa7ab1c671ba4552a48a522e9345373dc4 (diff) | |
| download | perlweeklychallenge-club-38b8cc06182321a196a4455cefde03bd0c2df53e.tar.gz perlweeklychallenge-club-38b8cc06182321a196a4455cefde03bd0c2df53e.tar.bz2 perlweeklychallenge-club-38b8cc06182321a196a4455cefde03bd0c2df53e.zip | |
Challenge 347 Solutions (Raku)
| -rw-r--r-- | challenge-347/mark-anderson/raku/ch-2.raku | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/challenge-347/mark-anderson/raku/ch-2.raku b/challenge-347/mark-anderson/raku/ch-2.raku index 6bb570ba93..f5682c59e3 100644 --- a/challenge-347/mark-anderson/raku/ch-2.raku +++ b/challenge-347/mark-anderson/raku/ch-2.raku @@ -11,22 +11,20 @@ sub format-phone-number($str is copy) { $str .= subst(/<space> | '-'/, :g); - do given $str.chars % 3 + .join('-') given do given $str.chars % 3 { when 0 { - .join('-') given $str ~~ m:g/.../ + m:g/.../ given $str } when 1 { - .join('-') given flat - $str.substr(0, *-4) ~~ m:g/.../, - $str.substr( *-4) ~~ m:g/../ + flat .substr(0, *-4) ~~ m:g/.../, + .substr( *-4) ~~ m:g/../ given $str } when 2 { - .join('-') given flat - $str.substr(0, *-2) ~~ m:g/.../, - $str.substr( *-2) + flat .substr(0, *-2) ~~ m:g/.../, + .substr( *-2) given $str } } } |
