String manipulation

From: pativo(at)arcor(dot)de (pativo)
To: pgsql-general(at)postgresql(dot)org
Subject: String manipulation
Date: 2004-02-17 11:46:53
Message-ID: 58babf1b.0402170346.4a719868@posting.google.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hello to all,

I have small problem. I have some database fields (VARCHAR)
and these field should hold some ahex coded values. So the
string length must be even and each character can only be
0-9, a-f or A-F.
My idea was that:

====8<-----------------------------------

CREATE TABLE test (
id INT4 PRIMARY KEY NOT NULL DEFAULT nextID(),
text VARCHAR(150) NOT NULL CHECK(isAHex(text))
);

CREATE FUNCTION isAHex(VARCHAR) RETURNS BOOLEAN AS '
DECLARE
text_p ALIAS FOR $1;
BEGIN
IF ((length(text_p) % 2) <> 0) THEN
RETURN FALSE;
END IF;
-- TODO How to check each character
RETURN TRUE;
END;
' LANGUAGE 'plpgsql';

====8<-----------------------------------

Has anybody an idea how could I check each character?
I would prefer a solution in plpgsql!!

Thank!

pativo

--
\\://
(- 0)
---ooO-(_)-Ooo---

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Holger Marzen 2004-02-17 12:02:43 Reuse of Subselects
Previous Message Pascal Polleunus 2004-02-17 11:39:06 Re: function returning a record