missing support for using regex and arrays

Started by Pavel Stehulealmost 22 years ago2 messagesbugs
Jump to latest
#1Pavel Stehule
pavel.stehule@gmail.com

Hello

I need to solve checking varchar array. I can write

CHECK('aaa' = ALL(x)) -- x is array
but I can't CHECK(ALL(x) = 'aaaa') or CHECK (ALL(x) ~ 'regex')

I know so I can write plpgsql function. I have question for hackers. Do
You plan better support for it?

Thank You
Pavel Stehule

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Pavel Stehule (#1)
Re: missing support for using regex and arrays

Pavel Stehule <stehule@kix.fsv.cvut.cz> writes:

I need to solve checking varchar array. I can write
CHECK('aaa' = ALL(x)) -- x is array
but I can't CHECK(ALL(x) = 'aaaa') or CHECK (ALL(x) ~ 'regex')
I know so I can write plpgsql function. I have question for hackers. Do
You plan better support for it?

No. The ALL keyword has to follow the operator it applies to --- the
syntax is not just "all(something)" but "something op all(something)".
I don't think we can relax that without creating syntactic ambiguity.

If you want to work with non-commutative operators such as regex, you
may need to invent your own operator.

regards, tom lane