2

我想在我的 android 应用程序中使用正则表达式来验证某些字段。

用户名 :

1大写字母[AZ],2数字[0-9],1任何特殊字符,然后是小字符[az],长度为10最大字符。

电子邮件地址 :

最后必须包含@google.com

移动的 :

必须是 +91 及之后的 10 位数字。

如何为所有三个字段形成我的正则表达式模式..?

4

6 回答 6

4

电子邮件 ID 的正则表达式:

^[A-Za-z][A-Za-z0-9]*([._-]?[A-Za-z0-9]+) @[A-Za-z] .[A-Za- z]{0,3}?.[A-Za-z]{0,2}$

接受值为:

  • hdf4.j8k@bfv.djf
  • ds.sd@c25v.fdv
  • dv_sdv@fvv
  • vdf-f@jn.fdv
  • jfk@mbf.khb.in

手机号正则表达式:

^[7-9][0-9]{9}$

非常适合印度手机号码。

固定电话号码的正则表达式:

^[0-9]{3,5}-[2-9]{1}[0-9]{5,7}$

用于带有地区代码的印度固定电话号码

如:022-58974658

于 2012-11-24T10:36:57.590 回答
1

例如,您可以找到密码、电子邮件等所需的正则表达式

对于用户名:

^[a-z0-9_-]{3,15}$

^ # 行首

[a-z0-9_-] # 匹配列表中的字符和符号,az, 0-9 , underscore , hyphen

{3,15} # 长度至少 3 个字符,最大长度 15

$ # 行尾

在:http ://www.mkyong.com/regular-expressions/10-java-regular-expression-examples-you-should-know/

于 2012-09-03T05:29:53.940 回答
0

移动的 :

Must be +91 and after that 10 digit.

^[7-9][0-9]{9}$仅对手机号码有用。但是对于国家代码,我们应该使用正则表达式,例如 ^[+(00)][0-9]{6,14}$ ..

就像是

1)

String phoneNumber = "+919900990000"
if(phoneNumber.matches("^[+(00)][0-9]{6,14}$")){
   //True

2)

  String phoneNumber = "9900990000"
  if(phoneNumber.matches("^[+(00)][0-9]{6,14}$")){
   //False

第一个是真的,因为它带有国家代码,但第二个是错误的,因为它没有附加任何国家代码。

于 2015-01-07T13:58:02.470 回答
0

请参阅下面的电子邮件验证链接,您可以修改部分代码以进行用户名验证和电话号码验证。

如何检查-edittexts-text-is-email-address-or-not

于 2012-09-03T05:27:56.947 回答
0
public static boolean isEmailValid(String email) {
    boolean isValid = false;

    String expression = "^[\\w\\.-]+@([\\w\\-]+\\.)+[A-Z]{2,4}$";
    CharSequence inputStr = email;

    Pattern pattern = Pattern.compile(expression, Pattern.CASE_INSENSITIVE);
    Matcher matcher = pattern.matcher(inputStr);
    if (matcher.matches()) {
        isValid = true;
    }
    return isValid;
}
于 2012-09-03T05:35:35.323 回答
0

您可以使用 Patterns 类来验证电子邮件、手机号码等因素。方法如下:

public static boolean isValidEmail(CharSequence target) {
    return (!TextUtils.isEmpty(target) && Patterns.EMAIL_ADDRESS.matcher(target).matches());
}

public static boolean isValidMobile(CharSequence target) {
    return (!TextUtils.isEmpty(target) && Patterns.PHONE.matcher(target).matches());
}

希望它会帮助你。

于 2020-02-19T10:54:27.763 回答