If you use column type email, the only validation seems to be: It has to contain exactly one “@”. TestTest.com is not possible Test@Test.com is working
But you can still put in invalid email addresses like:
. Te st@_Tesäüöß t.co m .
I learned from @Suvrutt_Gurjar and @Steve that we can use this valid_if expression for email column type:
ANY(EXTRACTEMAILS([_THIS]))=[_THIS]
And for EnumList type email:
ISBLANK([_THIS] - EXTRACTEMAILS([_THIS] & “”))
This is working very well, but you can still put in invalid email addresses like: a@a.a or Test@Test.aaaaaaaaaaaaaaaaaaaaaaaaaaa
I don’t know much about email syntax. So maybe someone already has an even more robust valid_if expression?
You would need to add those alongside the other validation rules. It’s also a pain to write a whole expression using ENDSWITH(), it would be great to be able to pass a list of “allowed ends”.
Thank you for sharing. But with this expression you can still enter invalid stuff like: test@test.com Blah Blah Blah
That’s why I prefer ANY(EXTRACTEMAILS([_THIS]))=[_THIS]
This expression only allows a valid email address.
Thank you for this hint. But there are too many different TLDs. Link
But as far as I know, it should has at least 2 characters.
So I came up with this:
Using your last example, can you help me by showing me how I can limit the size of the email entered to 50 characters, all lowercase and, in addition, testing whether the email is already registered? Before asking you for support, I tried for a long time to make these changes, but unfortunately I couldn’t.
I’m sorry for my command of the English language. If it weren’t for Google Translate, I wouldn’t even be able to send you this message.