aboutsummaryrefslogtreecommitdiff
path: root/challenge-194/luca-ferrari/postgresql/ch-1.plperl
blob: 62445dd0df8a4c8e05f027ca6898194b58b275bc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
-- Perl Weekly Challenge 194
-- Task 1

CREATE SCHEMA IF NOT EXISTS pwc194;

CREATE OR REPLACE FUNCTION
pwc194.task1_plperl( text )
RETURNS int
AS $CODE$
 my ($what) = @_;

 if ( $what =~ / ^ ([\d?]) ([\d?]) : ([\d?]) ([\d?]) $ /x ) {
    if ( $1 eq '?' ) {
       return 9;
    }
    elsif ( $2 eq '?' ) {
      return 3 if $1 == 2;
      return 9;
    }
    elsif ( $3 eq '?' ) {
      return 5;
    }
    else {
      return 9;
    }
 }

return undef;

$CODE$
LANGUAGE plperl;