89+ results for 'EMAIL_ADDRESS_REGEX' (0 ms)

Not the results you expected?

User.java (https://gitlab.com/dvesinger/TheFault) Java · 265 lines

17 * Valid email address regex.

18 */

19 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

20 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

21

validation.js (https://github.com/fetep/browserid.git) JavaScript · 130 lines

39

40 bid.verifyEmail = function(address) {

41 // Original gotten from http://blog.gerv.net/2011/05/html5_email_address_regexp/

42 // changed the requirement that there must be a ldh-str because BrowserID

43 // is only used on internet based networks.

Constants.java (https://gitlab.com/ahmadrosid/TrackinsAndroid) Java · 98 lines

9 public class Constants {

10

11 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

12 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

13

14 public static boolean isMatchEmail(String emailStr) {

15 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(emailStr);

16 return matcher.find();

17 }

RegisterActivity.java (https://github.com/hieuapp/android-firebase-chat.git) Java · 158 lines

27 FloatingActionButton fab;

28 CardView cvAdd;

29 private final Pattern VALID_EMAIL_ADDRESS_REGEX =

30 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

31 private EditText editTextUsername, editTextPassword, editTextRepeatPassword;

153 */

154 private boolean validate(String emailStr, String password, String repeatPassword) {

155 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX .matcher(emailStr);

156 return password.length() > 0 && repeatPassword.equals(password) && matcher.find();

157 }

LocalDateTimeUtils.java (https://gitlab.com/truongnv9xbn/spring-boot-project) Java · 150 lines

29 public static final String EXPORT_DATE_FORMAT = "yyyyMMddHHmmss";

30

31 public static final Pattern VALID_EMAIL_ADDRESS_REGEX = Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$",

32 Pattern.CASE_INSENSITIVE);

33

34 public static boolean validateEmail(String emailStr) {

35 emailStr = emailStr.trim();

36 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(emailStr);

37 return matcher.find();

38 }

User.java (https://github.com/eh3rrera/minitwit.git) Java · 76 lines

6

7 public class User {

8 Pattern EMAIL_ADDRESS_REGEX = Pattern.compile("(?:(?:\\r\\n)?[ \\t])*(?:(?:(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*|(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)*\\<(?:(?:\\r\\n)?[ \\t])*(?:@(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*(?:,@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*)*:(?:(?:\\r\\n)?[ \\t])*)?(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*\\>(?:(?:\\r\\n)?[ \\t])*)|(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)*:(?:(?:\\r\\n)?[ \\t])*(?:(?:(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*|(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)*\\<(?:(?:\\r\\n)?[ \\t])*(?:@(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*(?:,@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*)*:(?:(?:\\r\\n)?[ \\t])*)?(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*\\>(?:(?:\\r\\n)?[ \\t])*)(?:,\\s*(?:(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*|(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)*\\<(?:(?:\\r\\n)?[ \\t])*(?:@(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*(?:,@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*)*:(?:(?:\\r\\n)?[ \\t])*)?(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*\\>(?:(?:\\r\\n)?[ \\t])*))*)?;\\s*)");

9

10

64 if(StringUtils.isEmpty(username)) {

65 error = "You have to enter a username";

66 } else if(!EMAIL_ADDRESS_REGEX.matcher(email).matches()) {

67 error = "You have to enter a valid email address";

68 } else if(StringUtils.isEmpty(password)) {

ActivityUtility.java (https://gitlab.com/dvesinger/TheFault) Java · 114 lines

57 */

58 public static boolean validate(String emailStr) {

59 Matcher matcher = User.VALID_EMAIL_ADDRESS_REGEX.matcher(emailStr);

60 return matcher.find();

61 }

UserResource.java (https://gitlab.com/AERIUS/AERIUS) Java · 114 lines

46 public class UserResource implements UserApiDelegate {

47

48 private static final Pattern EMAIL_PATTERN = Pattern.compile(Constants.VALID_EMAIL_ADDRESS_REGEX, Pattern.CASE_INSENSITIVE);

49

50 private final ResponseService responseService;

text.js (https://github.com/google/end-to-end.git) JavaScript · 137 lines

106 }

107 var email = emailAddress.getAddress();

108 if (!constants.EMAIL_ADDRESS_REGEXP.exec(emailAddress.getAddress())) {

109 return null;

110 }

validation.js (https://github.com/catlee/browserid.git) JavaScript · 122 lines

39

40 bid.verifyEmail = function(address) {

41 // gotten from http://blog.gerv.net/2011/05/html5_email_address_regexp/

42 // changed the requirement that there must be a ldh-str because BrowserID

43 // is only used on internet based networks.

validation.js (https://github.com/ozten/browserid.git) JavaScript · 101 lines

9 if (typeof(address) !== "string")

10 return false;

11 // Original gotten from http://blog.gerv.net/2011/05/html5_email_address_regexp/

12 // changed the requirement that there must be a ldh-str because BrowserID

13 // is only used on internet based networks.

utils.py (http://app-inventor-for-android.googlecode.com/svn/trunk/) Python · 160 lines ✨ Summary

This Python code provides utility functions for input validation and database access, specifically designed for use with Google App Engine. It includes functions to validate player IDs, game IDs, instance IDs, and convert between string representations of boolean values. The code also handles database interactions using the App Engine’s data model.

22 from google.appengine.ext.db import Key

23

24 EMAIL_ADDRESS_REGEX = ("([0-9a-zA-Z]+[-._+&amp;])*[0-9a-zA-Z]+@"

25 "([-0-9a-zA-Z]+[.])+[a-zA-Z]{2,6}")

26

77 if pid is None or pid == "":

78 raise ValueError('The player identifier is blank.')

79 stripped_email = re.search(EMAIL_ADDRESS_REGEX, pid)

80 if stripped_email is None:

81 raise ValueError('%s is not a valid email address.' % pid)

CredentialHelper.kt (https://github.com/fossasia/susi_android.git) Kotlin · 122 lines

18

19 private val PASSWORD_PATTERN = Pattern.compile("^((?=.*\\d)(?=.*[A-Z])(?=.*[@#\$%])(?=.*\\W).{8,64})$")

20 private val VALID_EMAIL_ADDRESS_REGEX = Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE)

21 private val VALID_URL_REGEX = Pattern.compile("^(https?|ftp|file)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]")

22

31 Timber.d("isEmailValid: %s", mail)

32 val email = mail.trim { it <= ' ' }

33 return !TextUtils.isEmpty(email) && VALID_EMAIL_ADDRESS_REGEX.matcher(email).matches()

34 }

35

EmailValidator.java (https://gitlab.com/alejandrogervasio/customerapplication) Java · 15 lines

6 public class EmailValidator {

7

8 private static final Pattern VALID_EMAIL_ADDRESS_REGEX =

9 Pattern.compile("(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])", Pattern.CASE_INSENSITIVE);

10

11 public static boolean validate(String email) {

12 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(email);

13 return matcher.find();

14 }

Constants.java (https://gitlab.com/AERIUS/AERIUS) Java · 50 lines

42 * Regex used to a correct emailaddress.

43 */

44 public static final String VALID_EMAIL_ADDRESS_REGEX =

45 "^[\\w\\u00C0-\\u02AF-\\+]+(\\.[\\w\\u00C0-\\u02AF-]+)*@[\\w\\u00C0-\\u02AF-]+(\\.[\\w\\u00C0-\\u02AF]+)*(\\.[A-Za-z]{2,})$";

46

LoginUtils.java (https://gitlab.com/unique_steve/Ivo_app) Java · 59 lines

12 public class LoginUtils {

13

14 public static final Pattern VALID_EMAIL_ADDRESS_REGEX = Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$",

15 Pattern.CASE_INSENSITIVE);

16

35

36 public static boolean isEmailValid(String email) {

37 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(email);

38 return matcher.find();

39 }

EmailValidator.java (https://gitlab.com/alejandrogervasio/userappplication) Java · 22 lines

8 public class EmailValidator implements ConstraintValidator<ValidEmail, String> {

9

10 private static final Pattern VALID_EMAIL_ADDRESS_REGEX = Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

11

12 @Override

17 @Override

18 public boolean isValid(String email, ConstraintValidatorContext constraintValidatorContext) {

19 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(email);

20 return matcher.find();

21 }

email.js (https://github.com/audreyt/socialtext-open.git) JavaScript · 29 lines

13 + "([a-zA-Z0-9:]{2,4})+";

14

15 var EMAIL_ADDRESS_REGEX = new RegExp(

16 "^" + EMAIL_ADDRESS + "$", "i"

17 );

22

23 this.check_address = function(email_address) {

24 return EMAIL_ADDRESS_REGEX.test(email_address) ||

25 EMAIL_WITH_NAME_REGEX.test(email_address);

26 };

admin_form.rb (https://github.com/PopulateTools/gobierto.git) Ruby · 153 lines

22

23 validates :name, :email, :site, presence: true

24 validates :email, format: { with: Admin::EMAIL_ADDRESS_REGEXP }

25 validates :password, presence: { if: :new_record? }, confirmation: true

26

RegisterUser.cs (https://bitbucket.org/RobertoDiBi/spacewars-project.git) C# · 184 lines

34 public void Registration()

35 {

36 Regex VALID_EMAIL_ADDRESS_REGEX =new Regex("^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,6}$");

37 Regex passRegEx = new Regex("(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z]).{8,}");

38 //Connect to database

44 string password = passwordInput.text;

45 string confirmPass = confirmPassInput.text;

46 Match emailMatch = VALID_EMAIL_ADDRESS_REGEX.Match(email);

47 Match passMatch = passRegEx.Match(password);

48

PatternUtil.java (https://github.com/newbee-ltd/newbee-mall.git) Java · 63 lines

17 * 匹配邮箱正则

18 */

19 private static final Pattern VALID_EMAIL_ADDRESS_REGEX =

20 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

21

41 */

42 public static boolean isEmail(String emailStr) {

43 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(emailStr);

44 return matcher.find();

45 }

DefaultEmailService.java (https://github.com/ctripcorp/x-pipe.git) Java · 67 lines

32 }

33

34 private static final Pattern VALID_EMAIL_ADDRESS_REGEX =

35 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9._%+-]+$", Pattern.CASE_INSENSITIVE);

36

37 @Override

38 public CheckEmailResponse checkEmailAddress(String address) {

39 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(address);

40 boolean result = matcher.find();

41 if(result) {

ValidateUtils.java (https://github.com/fossasia/open-event-orga-app.git) Java · 63 lines

13 public final class ValidateUtils {

14

15 private static final Pattern VALID_EMAIL_ADDRESS_REGEX =

16 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

17

23

24 public static boolean validateEmail(String emailStr) {

25 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(emailStr);

26 return matcher.find();

27 }

EmailAddress.ts (https://github.com/Urigo/graphql-scalars.git) TypeScript · 36 lines

2

3 const validate = (value: any) => {

4 const EMAIL_ADDRESS_REGEX = /^[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])?)*$/;

5

6 if (typeof value !== 'string') {

8 }

9

10 if (!EMAIL_ADDRESS_REGEX.test(value)) {

11 throw new TypeError(`Value is not a valid email address: ${value}`);

12 }

admin_invitation_builder.rb (https://github.com/PopulateTools/gobierto.git) Ruby · 47 lines

36

37 def get_username_from_email(email_address)

38 if email_address =~ Admin::EMAIL_ADDRESS_REGEXP

39 $1

40 end

subscription_form.rb (https://github.com/PopulateTools/gobierto.git) Ruby · 72 lines

14

15 validates :user, :site, :subscribable, presence: true

16 validates :user_email, format: { with: User::EMAIL_ADDRESS_REGEXP }, allow_nil: true

17

18 def save

Utils.java (https://github.com/journaldev/journaldev.git) Java · 40 lines

16 email = email.trim();

17

18 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(email);

19 return matcher.find();

20

27 }

28

29 private static final Pattern VALID_EMAIL_ADDRESS_REGEX =

30 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

31

user.rb (https://github.com/PopulateTools/gobierto.git) Ruby · 74 lines

6 include User::Subscriber

7

8 EMAIL_ADDRESS_REGEXP = /\A(.+)@(.+\..+)\z/

9

10 belongs_to :site

registration_form.rb (https://github.com/PopulateTools/gobierto.git) Ruby · 58 lines

12

13 validates :site, presence: true

14 validates :email, format: { with: User::EMAIL_ADDRESS_REGEXP }

15

16 def save

email.js (https://github.com/matrix-org/matrix-react-sdk.git) JavaScript · 21 lines

15 */

16

17 const EMAIL_ADDRESS_REGEX = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i;

18

19 export function looksValid(email) {

20 return EMAIL_ADDRESS_REGEX.test(email);

21 }

22

admin_invitation_form.rb (https://github.com/PopulateTools/gobierto.git) Ruby · 51 lines

35 emails

36 .split(EMAIL_LIST_DELIMITER)

37 .select { |email| Admin::EMAIL_ADDRESS_REGEXP =~ email }

38 .map(&:strip)

39 end

admin_settings_form.rb (https://github.com/PopulateTools/gobierto.git) Ruby · 58 lines

15

16 validates :name, :email, presence: true

17 validates :email, format: { with: Admin::EMAIL_ADDRESS_REGEXP }

18 validates :password, confirmation: true

19

RegisterActivity.java (https://bitbucket.org/BohyunBarry/boundservice.git) Java · 153 lines

30 FloatingActionButton fab;

31 CardView cvAdd;

32 private final Pattern VALID_EMAIL_ADDRESS_REGEX =

33 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

34 private EditText editTextUsername, editTextPassword, editTextRepeatPassword;

148

149 private boolean validate(String emailStr, String password, String repeatPassword) {

150 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX .matcher(emailStr);

151 return password.length() > 0 && repeatPassword.equals(password) && matcher.find();

152 }

user_form.rb (https://github.com/PopulateTools/gobierto.git) Ruby · 74 lines

14

15 validates :user, :name, presence: true

16 validates :email, format: { with: User::EMAIL_ADDRESS_REGEXP }

17

18 def save

CustomUtil.java (https://gitlab.com/CreaTIKZ-groupe4/CreaTIKZ) Java · 131 lines

18 public class CustomUtil {

19

20 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

21 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

22 /**

66 */

67 public static Boolean isValidEmail(String email) {

68 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX .matcher(email);

69 return matcher.find();

70

ValidationUtil.java (https://github.com/eyebluecn/blog.git) Java · 89 lines

50

51

52 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

53 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

54

55 public static boolean isEmail(String emailStr) {

56 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(emailStr);

57 return matcher.find();

58 }

validate.js (https://gitlab.com/wamburu/fxa-content-server) JavaScript · 110 lines

30

31 // Original regexp from:

32 // http://blog.gerv.net/2011/05/html5_email_address_regexp/

33 // Modified to remove the length checks, which are done later.

34 // IETF spec: http://tools.ietf.org/html/rfc5321#section-4.5.3.1.1

EmailValidator.java (https://github.com/Godin/sonar.git) Java · 46 lines

29 class EmailValidator {

30

31 private static final Pattern VALID_EMAIL_ADDRESS_REGEX = compile("(?:(?:\\r\\n)?[ \\t])*(?:(?:(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*|(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)*\\<(?:(?:\\r\\n)?[ \\t])*(?:@(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*(?:,@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*)*:(?:(?:\\r\\n)?[ \\t])*)?(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*\\>(?:(?:\\r\\n)?[ \\t])*)|(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)*:(?:(?:\\r\\n)?[ \\t])*(?:(?:(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*|(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)*\\<(?:(?:\\r\\n)?[ \\t])*(?:@(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*(?:,@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*)*:(?:(?:\\r\\n)?[ \\t])*)?(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*\\>(?:(?:\\r\\n)?[ \\t])*)(?:,\\s*(?:(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*|(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)*\\<(?:(?:\\r\\n)?[ \\t])*(?:@(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*(?:,@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*)*:(?:(?:\\r\\n)?[ \\t])*)?(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*\\>(?:(?:\\r\\n)?[ \\t])*))*)?;\\s*)");

32

33 private EmailValidator() {

40

41 private static boolean isValidEmail(String email) {

42 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(email);

43 return matcher.find();

44 }

Validator.java (https://gitlab.com/arifhasnat/ajkerdeal) Java · 24 lines

8 */

9 public class Validator {

10 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

11 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

12 public static final Pattern VALID_MOBILE_NUMBER_REGEX =

14

15 public static boolean isValidEmail(String email) {

16 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(email);

17 return matcher.find();

18 }

content.rb (https://github.com/intrigueio/intrigue-ident.git) Ruby · 63 lines

50 name:"Email Addresses Detected",

51 dynamic_result: lambda { |d|

52 email_address_regex = /\A([\w+\-].?)+@[a-z\d\-]+(\.[a-z]+)*\.[a-z]+\z/i

53 captures = _all_body_captures(d,email_address_regex) || []

UserService.java (https://bitbucket.org/denisabarar/spring_demo_local.git) Java · 120 lines

19 public class UserService {

20 private static final String SPLIT_CH = " ";

21 public static final Pattern VALID_EMAIL_ADDRESS_REGEX = Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$",

22 Pattern.CASE_INSENSITIVE);

23

104

105 public static boolean validateEmail(String email) {

106 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(email);

107 return matcher.find();

108 }

Contact.java (https://bitbucket.org/sebinsteanu/dsir1862.git) Java · 142 lines

13

14

15 public static final Pattern VALID_EMAIL_ADDRESS_REGEX = Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

16 public static final Pattern VALID_PHONE_REGEX = Pattern.compile("^[\\+0][\\d]{5,10}$", Pattern.CASE_INSENSITIVE);

17 public static final Pattern VALID_NAME_REGEX = Pattern.compile("^([\\s]|[^0-9]|-){3,50}$", Pattern.CASE_INSENSITIVE);

90

91 public static boolean validEmail(String emailStr) {

92 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX .matcher(emailStr);

93 return matcher.find();

94 }

how-to-search-effectively-in-searchcode-server.html (https://github.com/boyter/searchcode-server.git) HTML · 65 lines

48 <p class="em">If a search does not return the results you are expecting or no results at all consider rewriting the query.

49 For example searching for <strong>Arrays.asList("a1", "a2", "b1", "c2", "c1")</strong> could be turned into a

50 looser query by searching for <strong>Arrays.asList</strong> or <strong>Arrays asList</strong>. Another example would be <strong>EMAIL_ADDRESS_REGEX</strong> for

51 <strong>email address regex</strong>.

52 </p>

Utilerias.java (https://github.com/castelarhub/CirculoCredito.git) Java · 67 lines

12 public class Utilerias {

13

14 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

15 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

16

37

38 public static boolean isValidEmail(String email){

39 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX .matcher(email);

40 return matcher.find();

41 }

Utilerias.java (https://github.com/castelarhub/CirculoCredito.git) Java · 110 lines

16 Pattern.compile("^\\d{2}/\\d{2}/\\d{4}$", Pattern.CASE_INSENSITIVE);

17

18 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

19 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

20

69

70 public static boolean isValidEmail(String email){

71 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX .matcher(email);

72 return matcher.find();

73 }

Utility.java (https://bitbucket.org/syncmed/doc360-doctor-android.git) Java · 68 lines

15

16 public class Utility {

17 private static final Pattern VALID_EMAIL_ADDRESS_REGEX =

18 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

19 private static final Pattern LETTERS_ONLY =

24 return false;

25 } else {

26 Matcher emailMatcher = VALID_EMAIL_ADDRESS_REGEX.matcher(email);

27 return emailMatcher.find();

28 }

filter-wrapper.php (https://github.com/wadd0032/mtm1531-homework-6.git) PHP · 153 lines

112 case FILTER_VALIDATE_EMAIL :

113 // From HTML5 spec: http://html5.org/tools/web-apps-tracker?from=6883&to=6884o

114 // And: http://blog.gerv.net/2011/05/html5_email_address_regexp/

115 return (bool)preg_match(">^[a-zA-Z0-9.!#$%&'*+/=?\^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$>", $variable);

116 break;

validates_email.rb (https://github.com/jamesarosen/ruby-tidbits.git) Ruby · 30 lines

9 def validates_email(*attr_names)

10 options = attr_names.extract_options!.symbolize_keys!

11 configuration = { :on => :save, :allow_blank => true, :message => ::ActiveRecord::Errors.default_error_messages[:invalid], :with => Tidbits::ActiveRecord::ValidatesEmail::SIMPLE_EMAIL_ADDRESS_REGEX }

12 configuration.update(options)

13 attr_names = [:email] if attr_names.nil? or attr_names.empty?

20 end

21

22 unless const_defined?(:SIMPLE_EMAIL_ADDRESS_REGEX)

23 SIMPLE_EMAIL_ADDRESS_REGEX = /\A[^@\s]+@(?:[[:alnum:]-]+\.)+[[:alpha:]]{2,}\Z/i

ScanInputValidation.java (https://bitbucket.org/swathi-cookie/wm-ticket-service.git) Java · 66 lines

24 }

25

26 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

27 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

28

29 public static boolean validate(String emailStr) {

30 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(emailStr);

31 return matcher.find();

32 }

taskpane_render.js (https://github.com/OfficeDev/PnP-OfficeAddins.git) JavaScript · 193 lines

85 function is_not_valid_email_address(email_address)

86 {

87 let email_address_regex = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;

88 return is_not_valid_text(email_address) || !(email_address_regex.test(email_address));

extra_validations.rb (https://github.com/pixeltrix/extra_validations.git) Ruby · 26 lines

1 module ExtraValidations

2

3 EMAIL_ADDRESS_REGEX = /\A(([A-Za-z0-9]+_+)|([A-Za-z0-9]+\-+)|([A-Za-z0-9]+\.+)|([A-Za-z0-9]+\++))*[A-Za-z0-9]+@((\w+\-+)|(\w+\.))*\w{1,63}\.[a-zA-Z]{2,6}\Z/i

4 WEB_ADDRESS_REGEX = /\Ahttp(s)?:\/\/([-a-z0-9]+)(\.[-a-z0-9]+)*?\.([a-z]{2,5}){1}\/?([-a-zA-Z0-9?$%&+=\/]{0,255})\Z/

5 UK_POSTCODE_REGEX = /\A[A-PR-UWYZ][A-HK-Y0-9][A-HJKSTUW0-9]?[ABEHMNPRVWXY0-9]? {1,2}[0-9][ABD-HJLN-UW-Z]{2}\Z/

7

8 def validates_as_email_address(*args)

9 args << {:with => EMAIL_ADDRESS_REGEX}.update(args.extract_options!); validates_format_of(*args)

10 end

11

ValidatorContact.java (https://bitbucket.org/laura1825/blir1825.git) Java · 47 lines

8

9 public class ValidatorContact {

10 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

11 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

12

42

43 public static boolean validEmail(String email) {

44 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX .matcher(email);

45 return matcher.find();

46 }

Validator.java (https://bitbucket.org/ikonstantine/somehiringproject.git) Java · 45 lines

5 public class Validator {

6

7 private static final Pattern VALID_EMAIL_ADDRESS_REGEX =

8 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

9

13 public static void validateEmail(String email) throws ValidatorException {

14 if (email == null) throw new ValidatorException(ValidatorErrorCode.NOT_VALIDATE_EMAIL);

15 if (email.equals("") || !VALID_EMAIL_ADDRESS_REGEX.matcher(email).find())

16 throw new ValidatorException(ValidatorErrorCode.NOT_VALIDATE_EMAIL);

17 }

Validations.java (https://bitbucket.org/fosdev/vouper.git) Java · 98 lines

67

68

69 private static final Pattern VALID_EMAIL_ADDRESS_REGEX =

70 Pattern.compile("^([_a-zA-Z0-9-]+(\\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\\.[a-zA-Z0-9-]+)*(\\.[a-zA-Z]{1,6}))?$", Pattern.CASE_INSENSITIVE);

71

74 return false;

75 }

76 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX .matcher(emailStr);

77 return matcher.find();

78 }

rfc822.rb (https://github.com/wireframe/email-validator.git) Ruby · 28 lines

10 # http://creativecommons.org/licenses/by-sa/2.5/

11 module RFC822

12 EMAIL_ADDRESS_REGEX = begin

13 qtext = '[^\\x0d\\x22\\x5c\\x80-\\xff]'

14 dtext = '[^\\x0d\\x5b-\\x5d\\x80-\\xff]'

DefaultUserService.java (https://bitbucket.org/roycat/ris-yips-spring-ws.git) Java · 145 lines

25 public class DefaultUserService implements UserService {

26

27 private static final Pattern VALID_EMAIL_ADDRESS_REGEX = Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$",

28 Pattern.CASE_INSENSITIVE);

29 private static final Pattern VALID_PASSWORD_REGEX = Pattern.compile("^[a-zA-Z0-9]+$");

125 return false;

126 }

127 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(email);

128 return matcher.find();

129 }

SignUpService.java (https://bitbucket.org/danhuycao/cs472_mum.git) Java · 40 lines

10 public class SignUpService {

11

12 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

13 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

14

26

27

28 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(email);

29 if (email.isEmpty()|| !matcher.find()) {

30 result.add("E-mail required");

HelperTests.php (https://github.com/tine20/Tine-2.0-Open-Source-Groupware-and-CRM.git) PHP · 95 lines

88 $input = 'H.-H.einer@nopel.opel';

89 $punyCodedAddress = Tinebase_Helper::convertDomainToPunycode($input);

90 if (! preg_match(Tinebase_Mail::EMAIL_ADDRESS_REGEXP, $punyCodedAddress)) {

91 self::fail('address is not invalid: ' . $punyCodedAddress);

92 }

DataValidation.java (https://bitbucket.org/dccor/musicmasterweb.git) Java · 33 lines

16

17 /** the Pattern with Email Regular Expression */

18 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

19 Pattern.compile("^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?"

20 , Pattern.CASE_INSENSITIVE);

27 */

28 public static boolean validateEmail(String emailStr) {

29 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(emailStr);

30 return matcher.find();

31 }

EmailValidator.java (https://github.com/dan31877/Programming-Projects.git) Java · 32 lines

12 */

13 public class EmailValidator implements ConstraintValidator<EmailConstraint, String> {

14 public static final Pattern VALID_EMAIL_ADDRESS_REGEX = Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$",

15 Pattern.CASE_INSENSITIVE);

16 public static boolean validate(String emailStr) {

17 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(emailStr);

18 return matcher.find();

19 }

validators.js (https://github.com/deadlyicon/validation.js.git) JavaScript · 64 lines

29 };

30

31 var EMAIL_ADDRESS_REGEX = /^([A-Za-z0-9]{1,}([-_\.&'][A-Za-z0-9]{1,}){0,}){1,}@(([A-Za-z0-9]{1,}[-]{0,1})\.){1,}[A-Za-z]{2,6}$/;

32 function isAnEmailAddress(value, reportErrors){

33 if (!EMAIL_ADDRESS_REGEX.test(value))

email.rb (https://github.com/bountyhill/bountyhill.git) Ruby · 50 lines

18

19 # constant to use with email validation

20 EMAIL_ADDRESS_REGEX = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,6}$/i

21

22 validates :email, :presence => true, :format => { :with => EMAIL_ADDRESS_REGEX }, :uniqueness => { :case_sensitive => false }

q.patterns.js (https://bitbucket.org/marcuspope/q.node) JavaScript · 56 lines

23

24 var email_formats = {

25 //http://blog.gerv.net/2011/05/html5_email_address_regexp/

26 html5_spec : (/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/)

27 };

UserValidation.java (https://bitbucket.org/zenwherk/zenwherk-api.git) Java · 92 lines

10 public class UserValidation {

11

12 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

13 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

14

37 message += "El correo no debe estar vacío. ";

38 } else {

39 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX .matcher(user.getEmail());

40 if(!matcher.find()) {

41 result.setErrorCode(400);

UserService.java (https://bitbucket.org/danhuycao/cs472_mum.git) Java · 50 lines

12 public class UserService {

13 private UserDao userdao = new UserDao() ;

14 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

15 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

16 public long insertUser(User u )

36

37

38 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(u.getEmail());

39 if (u.getEmail().isEmpty()|| !matcher.find()) {

40 result.add("email should have Email format");

CRUDManagement.java (https://github.com/christian-lang-2012/NubayAPI.git) Java · 174 lines

17

18 HashMap<Integer, Profile> tempServer = new HashMap<Integer, Profile>();

19 public static final Pattern VALID_EMAIL_ADDRESS_REGEX = Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

20

21 int currentID = 1;

167

168 private boolean validateEmailAddress(String s){

169 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX .matcher(s);

170 return matcher.find();

171 }

UserAccount.java (https://github.com/KyleGrice/MusicPlayerProject.git) Java · 71 lines

16 private String password;

17 private String email;

18 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

19 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

20

49

50 // Validate Email

51 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX .matcher(email);

52 if (matcher.find()) {

53 validEntries++;

email.js (https://github.com/edwindotcom/browserid-bigtent.git) JavaScript · 17 lines

5 module.exports = function (address) {

6 // Copied from mozilla/browserid which got it from...

7 // http://blog.gerv.net/2011/05/html5_email_address_regexp/

8 var parts = address.split("@");

9

SendEmailDelegate.java (https://github.com/camunda-consulting/code.git) Java · 51 lines

41 }

42

43 public static final Pattern VALID_EMAIL_ADDRESS_REGEX =

44 Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

45

46 public static boolean validate(String emailStr) {

47 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX .matcher(emailStr);

48 return matcher.find();

49 }

EmailUtils.cpp (https://review.tizen.org/git/) C++ · 97 lines

29

30 namespace {

31 const char* EMAIL_ADDRESS_REGEX =

32 "[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,6}";

33

34 const std::string EMAIL_ADDRESS_REGEX_GROUP =

35 StringBuilder()

36 .append("(")

37 .append(EMAIL_ADDRESS_REGEX)

38 .append(")")

39 .toString();

email_validator.rb (https://github.com/vjt/email_validator.git) Ruby · 105 lines

10 domain_part = '@(?:(?:(?:\w+\-+[^_])|(?:\w+\.[a-z0-9-]*))*(?:[a-z0-9-]{1,63})\.[a-z]{2,6}(?:\.[a-z]{2,6})?)'

11

12 email_address_regexp = '(?:' + local_part_unquoted + '+|' + local_part_quoted + '+)' + domain_part

13

14 Pattern = Regexp.new('\A' + email_address_regexp + '\Z', Regexp::EXTENDED | Regexp::IGNORECASE, 'n').freeze

15 Scanner = Regexp.new( email_address_regexp, Regexp::EXTENDED | Regexp::IGNORECASE, 'n').freeze

16 Separator = /[;,\s]\s*/.freeze # for multiple e-mail addresses

17

validation.js (https://github.com/tmd10470/browserid.git) JavaScript · 101 lines

8

9 bid.verifyEmail = function(address) {

10 // Original gotten from http://blog.gerv.net/2011/05/html5_email_address_regexp/

11 // changed the requirement that there must be a ldh-str because BrowserID

12 // is only used on internet based networks.

twitter.rb (https://github.com/bountyhill/bountyhill.git) Ruby · 126 lines

83 # check if email is given and if so if email is valid

84 if self.email

85 self.errors.add(:email, :invalid) unless self.email =~ Identity::Email::EMAIL_ADDRESS_REGEX

86 else

87 self.errors.add(:email, :blank)

EmailValidator.java (https://bitbucket.org/gabi88ibag/taxesmemo.git) Java · 67 lines

24 private UserService userService;

25

26 private static final Pattern VALID_EMAIL_ADDRESS_REGEX = Pattern

27 .compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

28

29 public static boolean isValidEmail(String email) {

30 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(email);

31 if (matcher.find()) {

32 return true;

Email.js (https://github.com/audreyt/socialtext-open.git) JavaScript · 26 lines

12 + "([a-zA-Z0-9:]{2,4})+";

13

14 var EMAIL_ADDRESS_REGEX = new RegExp(

15 "^" + EMAIL_ADDRESS + "$", "i"

16 );

21

22 return function(email_address) {

23 return EMAIL_ADDRESS_REGEX.test(email_address) ||

24 EMAIL_WITH_NAME_REGEX.test(email_address);

25 };

Address.java (https://github.com/amexboy/SAS.git) Java · 214 lines

88 * RFC822 compliant adapted for java

89 */

90 Pattern VALID_EMAIL_ADDRESS_REGEX = Pattern.compile("(?:(?:\\r\\n)?[ \\t])*(?:(?:(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*|(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)*\\<(?:(?:\\r\\n)?[ \\t])*(?:@(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*(?:,@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*)*:(?:(?:\\r\\n)?[ \\t])*)?(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*\\>(?:(?:\\r\\n)?[ \\t])*)|(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)*:(?:(?:\\r\\n)?[ \\t])*(?:(?:(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*|(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)*\\<(?:(?:\\r\\n)?[ \\t])*(?:@(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*(?:,@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*)*:(?:(?:\\r\\n)?[ \\t])*)?(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*\\>(?:(?:\\r\\n)?[ \\t])*)(?:,\\s*(?:(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*|(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)*\\<(?:(?:\\r\\n)?[ \\t])*(?:@(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*(?:,@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*)*:(?:(?:\\r\\n)?[ \\t])*)?(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\"(?:[^\\\"\\r\\\\]|\\\\.|(?:(?:\\r\\n)?[ \\t]))*\"(?:(?:\\r\\n)?[ \\t])*))*@(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*)(?:\\.(?:(?:\\r\\n)?[ \\t])*(?:[^()<>@,;:\\\\\".\\[\\] \\000-\\031]+(?:(?:(?:\\r\\n)?[ \\t])+|\\Z|(?=[\\[\"()<>@,;:\\\\\".\\[\\]]))|\\[([^\\[\\]\\r\\\\]|\\\\.)*\\](?:(?:\\r\\n)?[ \\t])*))*\\>(?:(?:\\r\\n)?[ \\t])*))*)?;\\s*)");

91 Pattern VALID_PHONE_NUMBER_REGEX = Pattern.compile("^(0\\d{9})|([+]\\d{12})$");

92

124

125 if (email != null && !email.isEmpty()) {

126 Matcher emailMatcher = VALID_EMAIL_ADDRESS_REGEX.matcher(this.email);

127

128 if (!emailMatcher.matches()) {

MMSOptionalData.java (https://github.com/snuffix/Android_LogdroidProject.git) Java · 106 lines

11

12 public static MMSAddressType fromString(String address) {

13 if (address.matches(EMAIL_ADDRESS_REGEXP)) {

14 return MMSAddressType.EMAIL_ADDRESS;

15 }

20 }

21

22 private static final String EMAIL_ADDRESS_REGEXP = "^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@([A-Za-z0-9-])+(\\.[a-z,A-Z]{2,})$";

23

24 private String subject = "";

MMS.java (https://github.com/snuffix/Android_LogdroidProject.git) Java · 249 lines

101

102 public static MMSAddressType fromString(String address) {

103 if (address.matches(EMAIL_ADDRESS_REGEXP)) {

104 return MMSAddressType.EMAIL_ADDRESS;

105 }

109 }

110

111 private static final String EMAIL_ADDRESS_REGEXP =

112 "^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@([A-Za-z0-9-])+(\\.[a-z,A-Z]{2,})$";

113 }

has_email.rb (https://github.com/alainravet/fail_fast.git) Ruby · 36 lines

21

22 module EmailValidator #:nodoc:

23 VALID_EMAIL_ADDRESS_REGEXP = /^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$/

24

25 def self.valid_email_address?(email)

26 email.strip!

27 !!(email =~ VALID_EMAIL_ADDRESS_REGEXP)

28 end

29

person_message.rb (https://github.com/PopulateTools/gobierto.git) Ruby · 21 lines

8

9 validates :name, :email, :body, presence: true

10 validates :email, format: { with: User::EMAIL_ADDRESS_REGEXP }

11

12 def deliver!

17.validate_user_method.html (https://github.com/sparktutorials/sparktutorials.github.io.git) HTML · 15 lines

4 if(StringUtils.isEmpty(username)) {

5 error = "You have to enter a username";

6 } else if(!EMAIL_ADDRESS_REGEX.matcher(email).matches()) {

7 error = "You have to enter a valid email address";

8 } else if(StringUtils.isEmpty(password)) {

EmailValidator.java (https://github.com/Flutterwave/rave-android.git) Java · 23 lines

14 public boolean isEmailValid(String email) {

15 if (email != null) {

16 Pattern VALID_EMAIL_ADDRESS_REGEX = Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);

17 Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(email);

email_page.js (https://github.com/dinda/socialtext.git) JavaScript · 155 lines

31 // http://fightingforalostcause.net/misc/2006/compare-email-regex.php

32 //

33 var EMAIL_ADDRESS_REGEX = new RegExp(

34 "^"

35 + "([a-zA-Z0-9_'+*$%\\^&!\\.\\-])+"

42

43 function email_page_check_address(email_address) {

44 return EMAIL_ADDRESS_REGEX.test(email_address);

45 }

46

EmailValidatorImpl.kt (https://bitbucket.org/wliberda/fotommvvmcleanarchitecture.git) Kotlin · 16 lines

10

11 override fun validate(emailStr: String): Boolean =

12 VALID_EMAIL_ADDRESS_REGEX.matcher(emailStr).run {

13 this.find()

14 }

ValidationUtils.java (https://bitbucket.org/Zeee/testapp.git) Java · 26 lines

6 public class ValidationUtils {

7

8 private static final Pattern EMAIL_ADDRESS_REGEX

9 = Pattern.compile(

10 "[a-zA-Z0-9\\+\\.\\_\\%\\-\\+]{1,256}" +

18

19 public static boolean isEmailValid(String email){

20 return EMAIL_ADDRESS_REGEX.matcher(email).matches();

21 }

22

mail_setting.rb (https://github.com/superricky/baobao.git) Ruby · 7 lines

3 validates :shop, presence: true

4 validates :address, :domain, :user_name, :password, :reply_to, presence:true, on: :update, unless: :use_system_setting

5 validates :reply_to, format: {with: VALID_EMAIL_ADDRESS_REGEX }, :allow_blank => true

6 end

7

EmailValidator.kt (https://bitbucket.org/wliberda/fotommvvmcleanarchitecture.git) Kotlin · 12 lines

7 */

8 interface EmailValidator {

9 val VALID_EMAIL_ADDRESS_REGEX: Pattern

10 get() = Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE)!!

11 fun validate(emailStr: String): Boolean

constant.rb (https://github.com/superricky/baobao.git) Ruby · 7 lines

2 SHOP_ID_REGEX = /\A\d+\Z/

3 VALID_SHOP_SLUG_REGEX = /[a-zA-Z][a-zA-Z0-9]{2,}/i

4 VALID_EMAIL_ADDRESS_REGEX = /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\Z/i

5 VALID_PHONE_TEL_REGEX = /((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)/i

6 VALID_PHONE_REGEX = /\A((0?(13[0-9]|15[012356789]|18[012356789]|14[57])[0-9]{8})|((0[1-9][0-9]{1,2}-)?\d{7,8})|(0\d{9}))\Z/i

email-validator.rb (https://github.com/wireframe/email-validator.git) Ruby · 23 lines

14

15 validates_each([attribute], options) do |record, attr, value|

16 valid_email = record.send(attr).to_s.match EMAIL_ADDRESS_REGEX

17 record.errors.add attr, options[:message] unless valid_email

18 end