Re: please help me on regular expression
От | Pavel Stehule |
---|---|
Тема | Re: please help me on regular expression |
Дата | |
Msg-id | 162867791002021238j31ad8d7cge44bbce28ff451f3@mail.gmail.com обсуждение исходный текст |
Ответ на | please help me on regular expression (Tena Sakai <tsakai@gallo.ucsf.edu>) |
Ответы |
Re: please help me on regular expression
Re: please help me on regular expression |
Список | pgsql-sql |
2010/2/2 Tena Sakai <tsakai@gallo.ucsf.edu>: > Hi everybody, > > I need a bit of help on postgres reqular expression. > With a table of the following definition: > > Table "tsakai.pheno" > Column | Type | Modifiers > -----------+-------------------+----------- > subjectid | integer | not null > height | character varying | not null > race | character varying | not null > blood | character varying | not null > > I want to catch entries in height column that includes a > decimal point. Here's my attempt: > > select subjectid, height > from tsakai.pheno > where height ~ '[:digit:]+.[:digit:]+'; > > Which returns 0 rows, but if I get rid of where clause, > I get rows like: > > subjectid | height > -----------+-------- > 55379 | 70.5 > 55383 | 69 > 55395 | 70 > 56173 | 71 > 56177 | 65.5 > 56178 | 70 > . . > . . > > And when I escape that dot after first plus sign with a backslash, > like this: > where height ~ '[:digit:]+\.[:digit:]+'; > then I get complaint: > > WARNING: nonstandard use of escape in a string literal > LINE 3: where height ~ '[:digit:]+\.[:digit:]+'; > ^ > HINT: Use the escape string syntax for escapes, e.g., E'\r\n'. > > From there, it was a downward spiral descent... > you have to use a prefix 'E' - E'some string with \backslash' for your case the reg. expr could be postgres=# select '70.5' ~ e'\\d+\.\\d+';?column? ----------t (1 row) http://www.postgresql.org/docs/8.1/static/functions-matching.html or postgres=# select '70.5' ~ e'[[:digit:]]+\.[[:digit:]]+';?column? ----------t (1 row) Regards Pavel Stehule > Please help. > > Thank you. > > Regards, > > Tena Sakai > tsakai@gallo.ucsf.edu > > > > -- > Sent via pgsql-sql mailing list (pgsql-sql@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-sql >
В списке pgsql-sql по дате отправления: