Re: Removing whitespace using regexp_replace
От | Andreas Kretschmer |
---|---|
Тема | Re: Removing whitespace using regexp_replace |
Дата | |
Msg-id | 20071028123254.GB17410@KanotixBox обсуждение исходный текст |
Ответ на | Re: Removing whitespace using regexp_replace (Thomas Kellerer <spam_eater@gmx.net>) |
Ответы |
Re: Removing whitespace using regexp_replace
|
Список | pgsql-sql |
Thomas Kellerer <spam_eater@gmx.net> schrieb: > Andreas Kretschmer wrote on 28.10.2007 12:42: > >>I have a column with the datatype "text" that may contain leading > >>whitespace (tabs, spaces newlines, ...) and I would like to remove them > >>all (ideally leading and trailing). > >You can use trim() for that: > >select 'x' || trim(both '\t' from trim(both ' ' from ' \t\tfoo bar ')) > >|| 'x'; > >(for testing with 'x' around the result) > Yes I was thinking about a solution like that as well, but wouldn't that > only work if the order in which spaces and tabs appear is always the same? > The above would replace ' \t' but not '\t ', right? Oh, yes. > > > >For regexp_replace() you need an extra parameter 'g' like below: > Cool, works like a charm. Nice, i'm glad to help you. > But it seems my problem was actually caused by something else: > > SELECT regexp_replace(myfield, '\s*', '', 'g') > FROM mytable; you should escape the \, change to ...'\\s*'... But without anchors this replaces all whitespaces, also within the text and not only at the beginning/end (^ and $) Andreas -- Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect. (Linus Torvalds) "If I was god, I would recompile penguin with --enable-fly." (unknow) Kaufbach, Saxony, Germany, Europe. N 51.05082°, E 13.56889°
В списке pgsql-sql по дате отправления: