diff options
| author | Mohammad Sajid Anwar <Mohammad.Anwar@yahoo.com> | 2025-07-15 10:44:08 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-07-15 10:44:08 +0100 |
| commit | 0889b4dc9a263f973986e0a6711676ce2d177b0a (patch) | |
| tree | 0af8c588858a6d4fa7a3c8b9470b2a1886a8ff11 | |
| parent | 76d54850758291f7e04ba5c015a45955161a817c (diff) | |
| parent | c7e76c59af220081c5321392b4a1a79881132507 (diff) | |
| download | perlweeklychallenge-club-0889b4dc9a263f973986e0a6711676ce2d177b0a.tar.gz perlweeklychallenge-club-0889b4dc9a263f973986e0a6711676ce2d177b0a.tar.bz2 perlweeklychallenge-club-0889b4dc9a263f973986e0a6711676ce2d177b0a.zip | |
Merge pull request #12343 from deadmarshal/TWC330
TWC330
| -rw-r--r-- | challenge-330/deadmarshal/blog.txt | 1 | ||||
| -rw-r--r-- | challenge-330/deadmarshal/erlang/ch1.erl | 13 | ||||
| -rw-r--r-- | challenge-330/deadmarshal/erlang/ch2.erl | 10 | ||||
| -rw-r--r-- | challenge-330/deadmarshal/java/Ch1.java | 17 | ||||
| -rw-r--r-- | challenge-330/deadmarshal/java/Ch2.java | 17 | ||||
| -rw-r--r-- | challenge-330/deadmarshal/perl/ch-1.pl | 14 | ||||
| -rw-r--r-- | challenge-330/deadmarshal/perl/ch-2.pl | 12 | ||||
| -rw-r--r-- | challenge-330/deadmarshal/python/ch1.py | 14 | ||||
| -rw-r--r-- | challenge-330/deadmarshal/python/ch2.py | 16 |
9 files changed, 114 insertions, 0 deletions
diff --git a/challenge-330/deadmarshal/blog.txt b/challenge-330/deadmarshal/blog.txt new file mode 100644 index 0000000000..1960ede8ed --- /dev/null +++ b/challenge-330/deadmarshal/blog.txt @@ -0,0 +1 @@ +https://deadmarshal.blogspot.com/2025/07/twc330.html diff --git a/challenge-330/deadmarshal/erlang/ch1.erl b/challenge-330/deadmarshal/erlang/ch1.erl new file mode 100644 index 0000000000..094c646847 --- /dev/null +++ b/challenge-330/deadmarshal/erlang/ch1.erl @@ -0,0 +1,13 @@ +-module(ch1). +-export([clear_digits/1]). + +clear_digits(S) -> + Regex = "\\D\\d", + case re:run(S,Regex) of + {match,_} -> case re:replace(S,Regex,"",[{return,list}]) of + "" -> ""; + NewString -> clear_digits(NewString) + end; + nomatch -> S + end. + diff --git a/challenge-330/deadmarshal/erlang/ch2.erl b/challenge-330/deadmarshal/erlang/ch2.erl new file mode 100644 index 0000000000..ee0924c922 --- /dev/null +++ b/challenge-330/deadmarshal/erlang/ch2.erl @@ -0,0 +1,10 @@ +-module(ch2). +-export([title_capital/1]). + +title_capital(S) -> + Words = string:tokens(S, " "), + CW = lists:map(fun(W) when length(W) < 3 -> string:lowercase(W); + (W) -> string:titlecase(string:lowercase(W)) + end,Words), + lists:flatten(lists:join(" ",CW)). + diff --git a/challenge-330/deadmarshal/java/Ch1.java b/challenge-330/deadmarshal/java/Ch1.java new file mode 100644 index 0000000000..3a5748b899 --- /dev/null +++ b/challenge-330/deadmarshal/java/Ch1.java @@ -0,0 +1,17 @@ +public class Ch1 { + public static void main(String[] args) { + System.out.println(clear_digits("cab12")); + System.out.println(clear_digits("xy99")); + System.out.println(clear_digits("pa1erl")); + } + + private static String clear_digits(String str) { + String prev = str; + do { + prev = str; + str = str.replaceAll("\\D\\d", ""); + } while (!str.equals(prev)); + return str; + } +} + diff --git a/challenge-330/deadmarshal/java/Ch2.java b/challenge-330/deadmarshal/java/Ch2.java new file mode 100644 index 0000000000..21b88887c7 --- /dev/null +++ b/challenge-330/deadmarshal/java/Ch2.java @@ -0,0 +1,17 @@ +import java.util.Arrays; +import java.util.stream.Collectors; + +public class Ch2 { + public static void main(String[] args) { + System.out.println(title_capital("PERL IS gREAT")); + System.out.println(title_capital("THE weekly challenge")); + System.out.println(title_capital("YoU ARE A stAR")); + } + + private static String title_capital(String str) { + return Arrays.stream(str.split(" ")) + .map(w -> w.length() < 3 ? w.toLowerCase() + : w.substring(0, 1).toUpperCase() + w.substring(1).toLowerCase()) + .collect(Collectors.joining(" ")); + } +} diff --git a/challenge-330/deadmarshal/perl/ch-1.pl b/challenge-330/deadmarshal/perl/ch-1.pl new file mode 100644 index 0000000000..397d40341d --- /dev/null +++ b/challenge-330/deadmarshal/perl/ch-1.pl @@ -0,0 +1,14 @@ +#!/usr/bin/env perl +use strict; +use warnings; + +sub clear_digits{ + my ($str) = @_; + 1 while($str =~ s/\D\d//); + $str +} + +printf "%s\n",clear_digits('cab12'); +printf "%s\n",clear_digits('xy99'); +printf "%s\n",clear_digits('pa1erl'); + diff --git a/challenge-330/deadmarshal/perl/ch-2.pl b/challenge-330/deadmarshal/perl/ch-2.pl new file mode 100644 index 0000000000..f3b87687b4 --- /dev/null +++ b/challenge-330/deadmarshal/perl/ch-2.pl @@ -0,0 +1,12 @@ +#!/usr/bin/env perl +use strict; +use warnings; + +sub title_capital{ + join ' ',map{length($_) < 3 ? lc : ucfirst lc} split ' ',$_[0]; +} + +printf "%s\n",title_capital('PERL IS gREAT'); +printf "%s\n",title_capital('THE weekly challenge'); +printf "%s\n",title_capital('YoU ARE A stAR'); + diff --git a/challenge-330/deadmarshal/python/ch1.py b/challenge-330/deadmarshal/python/ch1.py new file mode 100644 index 0000000000..a77b1d47b4 --- /dev/null +++ b/challenge-330/deadmarshal/python/ch1.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python + +import re + +def clear_digits(s): + p = r'\D\d' + while re.search(p,s): + s = re.sub(p,'',s) + return s + +print(clear_digits('cab12')) +print(clear_digits('xy99')) +print(clear_digits('pa1erl')) + diff --git a/challenge-330/deadmarshal/python/ch2.py b/challenge-330/deadmarshal/python/ch2.py new file mode 100644 index 0000000000..4e18e8df30 --- /dev/null +++ b/challenge-330/deadmarshal/python/ch2.py @@ -0,0 +1,16 @@ +#!/usr/bin/env python + +def title_capital(s): + words = s.split() + arr = [] + for word in words: + if len(word) < 3: + arr.append(word.lower()) + else: + arr.append(word.capitalize()) + return ' '.join(arr) + +print(title_capital('PERL IS gREAT')) +print(title_capital('THE weekly challenge')) +print(title_capital('YoU ARE A stAR')) + |
