3raser Posted October 17, 2012 Share Posted October 17, 2012 \w(.+?)@\w(.+?)\.\w(.+?) Is my RegEx to verify someone has their email in the correct format. It always leaves off the last letter, however. Any idea? Example: input: test@gmail.com matched: test@gmail.com (notice m is not matched) Quote Link to comment Share on other sites More sharing options...
requinix Posted October 17, 2012 Share Posted October 17, 2012 That regex will accept "hey @twitteruser, shut up.everything you say is stupid and wrong" as an email address. Which it clearly isn't. Find yourself a different regex, and when you do so that might fix your problem. And if not then we'll need to see the regex and your code. Quote Link to comment Share on other sites More sharing options...
kicken Posted October 17, 2012 Share Posted October 17, 2012 If you're just trying to validate user entered emails (rather than extract them from text or something) then I'd recommend you just use PHP's filter_var function with the email filter rather than try and re-invent the wheel writing your own regex. Quote Link to comment Share on other sites More sharing options...
requinix Posted October 17, 2012 Share Posted October 17, 2012 (edited) rather than try and re-invent the wheel writing your own regex. Because I just love bringing this up, linky. The wheel is a complicated beast. Also worth noting: if a regex is too restrictive and a user doesn't want to enter a real address, they can very easily just put in "nobody@example.com". Totally valid. That's why places that need a real email address typically send a confirmation message. Edited October 17, 2012 by requinix Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.