aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-278/jaldhar-h-vyas/blog.txt1
-rwxr-xr-xchallenge-278/jaldhar-h-vyas/perl/ch-1.pl12
-rwxr-xr-xchallenge-278/jaldhar-h-vyas/perl/ch-2.sh3
-rwxr-xr-xchallenge-278/jaldhar-h-vyas/raku/ch-1.raku14
-rwxr-xr-xchallenge-278/jaldhar-h-vyas/raku/ch-2.sh3
5 files changed, 33 insertions, 0 deletions
diff --git a/challenge-278/jaldhar-h-vyas/blog.txt b/challenge-278/jaldhar-h-vyas/blog.txt
new file mode 100644
index 0000000000..e7b576af23
--- /dev/null
+++ b/challenge-278/jaldhar-h-vyas/blog.txt
@@ -0,0 +1 @@
+https://www.braincells.com/perl/2024/07/perl_weekly_challenge_week_278.html
diff --git a/challenge-278/jaldhar-h-vyas/perl/ch-1.pl b/challenge-278/jaldhar-h-vyas/perl/ch-1.pl
new file mode 100755
index 0000000000..bfb294ce10
--- /dev/null
+++ b/challenge-278/jaldhar-h-vyas/perl/ch-1.pl
@@ -0,0 +1,12 @@
+#!/usr/bin/perl
+use v5.38;
+
+my $str = shift;
+my %order;
+
+for my $w (split /\s+/, $str) {
+ my ($word, $pos) = $w =~ /(.+)(\d+)/;
+ $order{$pos} = $word;
+}
+
+say join q{ }, map { $order{$_} } sort keys %order;
diff --git a/challenge-278/jaldhar-h-vyas/perl/ch-2.sh b/challenge-278/jaldhar-h-vyas/perl/ch-2.sh
new file mode 100755
index 0000000000..67206abbd0
--- /dev/null
+++ b/challenge-278/jaldhar-h-vyas/perl/ch-2.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+perl -E '$ARGV[0]=~s{(.+$ARGV[1])(.+)}{(join q{},sort split//, $1).$2}e;say $ARGV[0]' "$@"
diff --git a/challenge-278/jaldhar-h-vyas/raku/ch-1.raku b/challenge-278/jaldhar-h-vyas/raku/ch-1.raku
new file mode 100755
index 0000000000..6957089901
--- /dev/null
+++ b/challenge-278/jaldhar-h-vyas/raku/ch-1.raku
@@ -0,0 +1,14 @@
+#!/usr/bin/raku
+
+sub MAIN(
+ $str
+) {
+ my %order;
+
+ for $str.words -> $w {
+ my ($word, $pos) = $w.match(/ (.+)(\d+) /).List;
+ %order{$pos} = $word;
+ }
+
+ %order.keys.sort.map({ %order{$_} }).join(q{ }).say;
+} \ No newline at end of file
diff --git a/challenge-278/jaldhar-h-vyas/raku/ch-2.sh b/challenge-278/jaldhar-h-vyas/raku/ch-2.sh
new file mode 100755
index 0000000000..c1a2c5e28d
--- /dev/null
+++ b/challenge-278/jaldhar-h-vyas/raku/ch-2.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+raku -e 'say S|(.+$(@*ARGS[1]))?(.+)|$(($0//q{}).split(q{}).sort.join~($1//q{}))| with @*ARGS[0]' "$@"