From: | Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com> |
---|---|
To: | Brian Dunavant <brian(at)omniti(dot)com> |
Cc: | Ron Ben <ronb910(at)walla(dot)co(dot)il>, "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Request to add feature to the Position function |
Date: | 2017-03-27 16:16:09 |
Message-ID: | b149c981-afb1-a23f-22c7-5ab4ef455e1c@aklaver.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On 03/27/2017 09:03 AM, Brian Dunavant wrote:
> That does not return the correct answer for the original poster's request.
>
> flpg=# select position('om' in reverse('Tomomasaaaaaaaaaaa'));
> position
> ----------
> 15
> (1 row)
It shows the position counting back from the end. If you want counting
from the front:
aklaver(at)test=> select (length('Tomomasaaaaaaaaaaa')+ 1) - position('om'
in reverse('Tomomasaaaaaaaaaaa'));
?column?
----------
4
>
>
>
>
> On Mon, Mar 27, 2017 at 11:43 AM, Adrian Klaver
> <adrian(dot)klaver(at)aklaver(dot)com> wrote:
>> On 03/27/2017 08:05 AM, Ron Ben wrote:
>>>
>>> Hi,
>>> position(substring in string)
>>> as listed here:
>>> https://www.postgresql.org/docs/9.1/static/functions-string.html
>>> locates sub string in a string.
>>>
>>> It doesn't support locateing the substring from the back.
>>>
>>> For example:
>>>
>>> position('om' in 'Tomomas')
>>> gives 2
>>>
>>> But if I want to locate the first occurance from the back of the string
>>> it's impossible/
>>
>>
>> aklaver(at)test=> select position('om' in reverse('Tomomas'));
>> position
>> ----------
>> 4
>>
>>
>>>
>>> My suggestion is to create a function
>>> position(substring in string,order)
>>> where order can be: begin, end
>>>
>>> and it will find the string according to this parameter.
>>> This is pretty easy to implement and should be a part of the PostgreSQL
>>> tools.
>>>
>>> similar fuctionality exists in trim function where user can specify
>>> leading or taling parameter
>>
>>
>>
>> --
>> Adrian Klaver
>> adrian(dot)klaver(at)aklaver(dot)com
>>
>>
>> --
>> Sent via pgsql-general mailing list (pgsql-general(at)postgresql(dot)org)
>> To make changes to your subscription:
>> http://www.postgresql.org/mailpref/pgsql-general
--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com
From | Date | Subject | |
---|---|---|---|
Next Message | Brian Dunavant | 2017-03-27 16:23:44 | Re: Request to add feature to the Position function |
Previous Message | David G. Johnston | 2017-03-27 16:15:59 | Re: Request to add feature to the Position function |