Re: Match 2 words and more

Поиск
Список
Период
Сортировка
От David G. Johnston
Тема Re: Match 2 words and more
Дата
Msg-id CAKFQuwYN=1+-2pP2EEWxUcARXgt3OcyYfz_9sEqg1uZmr=PQSg@mail.gmail.com
обсуждение исходный текст
Ответ на Match 2 words and more  (Shaozhong SHI <shishaozhong@gmail.com>)
Список pgsql-general
On Sat, Nov 27, 2021 at 5:27 PM Shaozhong SHI <shishaozhong@gmail.com> wrote:
this is supposed to find those to have 2 words and more.

select name FROM a_table where "STREET_NAME" ~ '^[[:alpha:]+ ]+[:alpha:]+$';

But, it finds only one word as well.

It appears that regex is not robust.

Can anyone shed light on this?


You put the space inside the first character class (the plus sign within that class is also a literal plus, not a "one or more" indicator) thus you've made the space itself optional.  Did you maybe mean to use ( ) parens instead of [ ]?

When asking regex questions it is usually more helpful to formulate them like so:

SELECT 'this should match' ~ '<regex here>';

David J.

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

Предыдущее
От: Guyren Howe
Дата:
Сообщение: Re: Match 2 words and more
Следующее
От: Ron
Дата:
Сообщение: Re: Match 2 words and more