I just compiled the code provided in the article and the compiled WASM module is 22kb. Not saying that it makes it the right solution, but a 45× difference is not insignificant.
Not great, not terrible.
https://html.spec.whatwg.org/#email-state-(type=email)
/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/
But it is true that you can implement it with a FSM(which is what firefox does). Webkit uses a regex as well I think.What kind of validation are you going to do without a regular expression?
Actual form validation… I can't even think of a single kind of form validation where a regex would help…