Re: How best to work around the issue - regex string cannot contain brackets

From: Shaozhong SHI <shishaozhong(at)gmail(dot)com>
To: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
Cc: Christophe Pettus <xof(at)thebuild(dot)com>, pgsql-sql <pgsql-sql(at)lists(dot)postgresql(dot)org>
Subject: Re: How best to work around the issue - regex string cannot contain brackets
Date: 2022-02-04 14:00:55
Message-ID: CA+i5JwZ8BntgpM6J5dsC+66yUMAacQ8DqBr6WsYbo7=0KedccQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

It appears that the following regex work differently.

Why \d and [\d] are different?

[A-PR-UWYZ]\d{1,2} and [A-PR-UWYZ][\d]{1,2}

Regards,

David

On Thu, 3 Feb 2022 at 17:04, David G. Johnston <david(dot)g(dot)johnston(at)gmail(dot)com>
wrote:

> On Thu, Feb 3, 2022 at 9:58 AM Christophe Pettus <xof(at)thebuild(dot)com> wrote:
>
>>
>>
>> > On Feb 3, 2022, at 08:53, Shaozhong SHI <shishaozhong(at)gmail(dot)com> wrote:
>> >
>> > One would consider the following would work, but it did not because the
>> brackets.
>> > select regexp_matches('Department for Transport (Parking)', 'Department
>> for Transport (Parking)', 'g')
>> >
>> > Can anyone enlighten me?
>>
>
> Have you tried reading a book or some tutorials on RegExes? I'll admit
> our documentation is probably not the best resource out there to actually
> learn the language.
>
>
>> You escape the ()s with a backslash:
>>
>
> More generally this behavior this documented as "\k"
>
>
> https://www.postgresql.org/docs/current/functions-matching.html#FUNCTIONS-POSIX-REGEXP
>
> David J.
>
>

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Steve Midgley 2022-02-04 17:14:39 Re: How best to work around the issue - regex string cannot contain brackets
Previous Message hubert depesz lubaczewski 2022-02-04 12:55:58 Re: How best to work around the issue - regex string cannot contain brackets