Re: Regex Character-Class
| От | Thomas Pundt |
|---|---|
| Тема | Re: Regex Character-Class |
| Дата | |
| Msg-id | 4A49BE61.3060506@rp-online.de обсуждение |
| Ответ на | Regex Character-Class (Henry <henry@zen.co.za>) |
| Список | pgsql-general |
Henry schrieb: > I must be missing something here: > > SELECT '1.1.1.1' ~ E'^\d+'; > > returns FALSE, when I would expect TRUE, as for: > > SELECT '1.1.1.1' ~ E'^[[:digit:]]+'; > > ie, '[[:digit:]]' != '\d' > > In config, "regex_flavor = advanced". > > Any ideas? Yes; you have to escape the backslash character: => SELECT '1.1.1.1' ~ E'^\\d+'; ?column? ---------- t (1 row) See the documentation for this (http://www.postgresql.org/docs/8.3/interactive/functions-matching.html): Note: Remember that the backslash (\) already has a special meaning in PostgreSQL string literals. To write a pattern constant that contains a backslash, you must write two backslashes in the statement, assuming escape string syntax is used (see Section 4.1.2.1). Ciao, Thomas
В списке pgsql-general по дате отправления: