aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbigail <abigail@abigail.be>2020-12-19 19:56:41 +0100
committerAbigail <abigail@abigail.be>2020-12-20 01:57:10 +0100
commitf1dbeec36d434e9e5281318caa12dafcd89a0232 (patch)
treee361eb2f12ac3a44042cde4dec99328ed6f877ce
parentc5ddab618e42c74be87e07c12026e797734804ab (diff)
downloadperlweeklychallenge-club-f1dbeec36d434e9e5281318caa12dafcd89a0232.tar.gz
perlweeklychallenge-club-f1dbeec36d434e9e5281318caa12dafcd89a0232.tar.bz2
perlweeklychallenge-club-f1dbeec36d434e9e5281318caa12dafcd89a0232.zip
Nodejs solution for week 091/part 1
-rw-r--r--challenge-091/abigail/node/ch-1.js15
1 files changed, 15 insertions, 0 deletions
diff --git a/challenge-091/abigail/node/ch-1.js b/challenge-091/abigail/node/ch-1.js
new file mode 100644
index 0000000000..898e085e2b
--- /dev/null
+++ b/challenge-091/abigail/node/ch-1.js
@@ -0,0 +1,15 @@
+//
+// Read STDIN. Split on newlines, filter out empty lines,
+// split each line on white space, then call "show"
+//
+ require ("fs")
+. readFileSync (0) // Read all.
+. toString () // Turn it into a string.
+. split ("\n") // Split on newlines.
+. filter (_ => _ . length) // Filter out empty lines.
+. map (_ => _ . replace (/([0-9])\1*/g,
+ (mtch, p1) => mtch . length + p1))
+ // Replace
+. map (_ => process . stdout . write (_ + "\n"))
+ // Print
+;