On Tue, Oct 2, 2018 at 10:36 PM <zljubi...@gmail.com> wrote:
>
> Hi,
>
> if I have a string:
>
> sql = """
> where 1 = 1
> and field = :value
> and field2 in (:list)
> """
>
> I would like to replace every word that starts with ":" in the following way:
> 1. replace ":" with "${"
> 2. at the end of the word add "}"
>
>
> An example should look like this:
>
> where 1 = 1
> and field = ${value}
> and field2 in (${list})
>
> How to do that?

First off: WHY? Are you then planning to do a naive interpolation?

Are you trying to recognize syntactic elements in SQL? If so, you'll
need an SQL parser. Or are you prepared to handle just a few basics,
like making sure the colon isn't inside quotes? And if so, which
basics? And what constitutes a word?

I strongly recommend *not doing this* unless you have an extremely
good reason to.

ChrisA
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to