diff options
| author | Luca Ferrari <fluca1978@gmail.com> | 2022-09-26 10:30:21 +0200 |
|---|---|---|
| committer | Luca Ferrari <fluca1978@gmail.com> | 2022-09-26 10:30:21 +0200 |
| commit | b0bdb6f3151e52bdaa12978388f69537cdc7bed8 (patch) | |
| tree | 3266896cfc4c2487b5b1e8948b5d3d4fcd949be0 | |
| parent | 42f07c6f62ea75e8ecabef9ad058f8b4a1590ee5 (diff) | |
| download | perlweeklychallenge-club-b0bdb6f3151e52bdaa12978388f69537cdc7bed8.tar.gz perlweeklychallenge-club-b0bdb6f3151e52bdaa12978388f69537cdc7bed8.tar.bz2 perlweeklychallenge-club-b0bdb6f3151e52bdaa12978388f69537cdc7bed8.zip | |
Task 2 plperl
| -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; |
