正则表达式

正则表达式(Regex):使用特殊的符号来做校验,目标是操作字符串,例如手机号码、邮箱、身份证

优缺点: 

简化书写,但是阅读性较差

 

 

正则表达式的语法规则:

[abc]   :   表示只能出现一个字符,而且这个字符只能是 a,b,c中的其中一个

[a-zA-Z]   :   表示一个字符,该字符为a-z或者A-Z中的某一个

\d   :   表示数字  也可以使用 [0-9] 代替

X{n}   :   X字符出现的次数刚好为n次     比如  [0-9]{2}   表示出现两个字符,为数字

X{n,}    :    X字符至少出现n次

X{n,m}    :    X 字符至少出现n次,至多m次

(X)+   :   表示X至少出现一次 ,等于  X{1,}

|    :  或者的意思   如   ([a-z]+|\\d+)   表示可以出现至少一次小写字母或数字

\\.   :   表示   “.”

 

在前端中使用正则表达式的时候,比如出现在<input> 标签中的时候, 在标签中添加    pattern=“正则内容”  required="required"  就可以了

正则表达式的转义字符:

\D    :  非数字,除了[0-9]

\s    : 空白字符(如空格,\t制表位, \n换行)

\S    : 非空白字符

\w    : 单词字符: [a-zA-z_0-9]

\W     : 非单词字符

在正则表达式中, “^” 表示正则的其实标志,“$” 表示结束标记,(也可以不写)

 

在Java中进行字符的正则校验可以使用下面这样的方式:

String data = "a";
String regex = "^\w$";
boolean flag = data.matches(regex);
System.out.println(flag);

 

只是用前台校验的话可以通过工具进行代码的修改,绕过校验,这样比较危险

 

正则的综合应用:

用户名只能为字母,长度为6-12位:[a-zA-z]{6,12}

密码只能为数字,长度至少为6位: [0-9]{6,}  ,   \\d{6,}

手机号校验: [1][3578]\\d{9}

邮箱校验:[a-zA-Z_0-9]{3,}@([a-zA-Z]+|\\d+)(\\.[a-zA-Z]+)+

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值