Re: Regular expression for lower case to upper case. - Mailing list pgsql-general

From Alban Hertroys
Subject Re: Regular expression for lower case to upper case.
Date
Msg-id 5C6EE9B5-477D-4206-8C36-D083CE54BED4@gmail.com
Whole thread Raw
In response to Re: Regular expression for lower case to upper case.  (Eagna <eagna@protonmail.com>)
List pgsql-general
> On 10 Dec 2022, at 12:00, Eagna <eagna@protonmail.com> wrote:
>
>
> Hi, and thanks for your input.
>
>
>> RegExp by itself cannot do this. You have to match all parts of the input into different capturing groups, then use
lower()combined with format() to build a new string. Putting the capturing groups into an array is the most useful
option.
>
>
> OK - I *_kind_* of see what you're saying.
>
> There's a small fiddle here (https://dbfiddle.uk/rhw1AdBY) if you'd care to give an outline of the solution that you
propose.

If you put all the regexes and their replacements into a table[1], you could use an aggregate over them to combine all
thereplacements into the final string. It would need some aggregate like regex_replace_agg, which would probably be a
customaggregate. 

[1]: If you stick to ASCII, you could just calculate them and even omit storing them in a physical table.

Alban Hertroys
--
If you can't see the forest for the trees,
cut the trees and you'll find there is no forest.




pgsql-general by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: Regular expression for lower case to upper case.
Next
From: "Peter J. Holzer"
Date:
Subject: Re: Regular expression to UPPER() a lower case string