diff options
| -rw-r--r-- | challenge-184/luca-ferrari/postgresql/ch-2.plperl | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/challenge-184/luca-ferrari/postgresql/ch-2.plperl b/challenge-184/luca-ferrari/postgresql/ch-2.plperl new file mode 100644 index 0000000000..be6b45cc9e --- /dev/null +++ b/challenge-184/luca-ferrari/postgresql/ch-2.plperl @@ -0,0 +1,30 @@ +-- Perl Weekly Challenge 184 +-- Task 2 + +CREATE SCHEMA IF NOT EXISTS pwc184; + +CREATE OR REPLACE FUNCTION +pwc184.task2_plperl( text[] ) +RETURNS TABLE( n text, l text ) +AS $CODE$ + + +my @numbers; +my @letters; + +for my $current_string ( @{ $_[0] } ) { + elog(INFO, "$current_string" ); + my @parts = split //, $current_string; + + for ( @parts ) { + push @numbers, $_ if ( $_ =~ /\d/ ); + push @letters, $_ if ( $_ =~ /[a-z]/i ); + } +} + +return_next( { n => join( ',', @numbers ), + l => join(',', @letters ) } ); +return undef; + +$CODE$ +LANGUAGE plperl; |
