下面的定义似乎很重要。这可以写得更简洁吗?
CREATE OR REPLACE FUNCTION "check_email"(email TEXT)
RETURNS BOOLEAN AS $$
BEGIN
RETURN email ~* '^[A-Za-z0-9._%+$-]+@[a-zA-Z0-9-]+([.][A-Za-z0-9-]+)+$';
END;
$$ LANGUAGE plpgsql;
我对缩短正则表达式没有兴趣,只是定义样板文件。
答案 0 :(得分:1)
您可以使用SQL而不是PLPGSQL语言:
CREATE FUNCTION check_email(text)
RETURNS boolean AS $$
SELECT $1 ~* '^[A-Za-z0-9._%+$-]+@[a-zA-Z0-9-]+([.][A-Za-z0-9-]+)+$';
$$ LANGUAGE sql;