android中用于电子邮件、用户名和;手机号码
我想在我的android应用程序中使用regex来验证一些字段 用户名:android中用于电子邮件、用户名和;手机号码,android,regex,Android,Regex,我想在我的android应用程序中使用regex来验证一些字段 用户名: 1大写字母[A-Z],2数字[0-9],1特殊字符any,然后后跟小字符[A-Z]和lenth将是10最大字符数 电邮地址: 最后一页中必须包含@google.com 流动电话: 必须是+91,然后是10位数字 如何为所有三个字段形成正则表达式模式?请参见下面的电子邮件验证链接,您可以修改用户名验证和电话号码验证的部分代码 您可以找到密码、电子邮件等所需的正则表达式 用户名: ^[a-z0-9_-]{3,15}$ ^#线路
1
大写字母[A-Z],2
数字[0-9],1
特殊字符any,然后后跟小字符[A-Z]和lenth将是10
最大字符数
电邮地址:
最后一页中必须包含@google.com
流动电话:
必须是+91,然后是10位数字
如何为所有三个字段形成正则表达式模式?请参见下面的电子邮件验证链接,您可以修改用户名验证和电话号码验证的部分代码
您可以找到密码、电子邮件等所需的正则表达式 用户名: ^[a-z0-9_-]{3,15}$ ^#线路起点 [a-z0-9_-]#匹配列表中的字符和符号,a-z,0-9 ,下划线,连字符 {3,15}#长度至少为3个字符,最大长度为15 $#线路的尽头 邮箱地址:电子邮件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
- 视频显示器-f@jn.fdv
- jfk@mbf.khb.in
Must be +91 and after that 10 digit.
^[7-9][0-9]{9}$仅对手机号码有用。但是对于国家代码,我们应该使用类似regex的^[+(00)][0-9]{6,14}$
差不多
(一)
(二)
第一个是正确的,因为它有国家代码,但第二个是错误的,因为它没有任何国家代码 您可以使用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());
}
希望它能对您有所帮助。我如何设置特殊字符验证?@user1642834请查看该问题的答案。不需要标志,只需在if内返回true,在if外返回false。同时为用户名和手机号码设置正则表达式。此正则表达式匹配
aaa@%§
,不确定它是否是有效的电子邮件地址!
String phoneNumber = "+919900990000"
if(phoneNumber.matches("^[+(00)][0-9]{6,14}$")){
//True
String phoneNumber = "9900990000"
if(phoneNumber.matches("^[+(00)][0-9]{6,14}$")){
//False
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());
}