Escaping regular expressions in plperl

Поиск
Список
Период
Сортировка
От Toomas Vendelin
Тема Escaping regular expressions in plperl
Дата
Msg-id BC0D9817-95DD-43D1-9C7E-1933988B0E34@vendelin.com
обсуждение исходный текст
Ответы Re: Escaping regular expressions in plperl  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-general
How should one escape regular expressions in plperl?

In the following chunk of PlPerl code the date doesn't match  the regex:

my $endby = '2009-06-13';

my $t = spi_exec_query(qq|SELECT CASE WHEN '$endby'  ~ E'.*\\d\\d\\d\\d
\\-\\d\\d?\\-\\d\\d?.*'
         THEN '$endby'::timestamptz ELSE CURRENT_DATE::timestamptz END AS
test|);

  die "$t->{rows}[0]{test}";

However, when I run the following query using PgAdmin, the date DOES
match the regex.

SELECT CASE WHEN '$endby'  ~ E'.*\\d\\d\\d\\d\\-\\d\\d?\\-\\d\\d?.*'
         THEN '$endby'::timestamptz ELSE CURRENT_DATE::timestamptz END AS
test






В списке pgsql-general по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: accessing anyarray elements
Следующее
От: Sim Zacks
Дата:
Сообщение: citext.so