正则表达式

邮箱正则:java

var regex = /^([0-9A-Za-z\-_\.]+)@([0-9a-z]+\.[a-z]{2,3}(\.[a-z]{2})?)$/g;spa

* 移动号码段:13九、13八、13七、13六、13五、13四、150、15一、15二、15七、15八、15九、18二、18三、18七、18八、147
* 联通号码段:130、13一、13二、13六、18五、18六、145

* 电信号码段:13三、15三、180、189code

var regex = "^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0,5-9]))\\d{8}$";

.点  匹配除"\n"和"\r"以外的任何单个字符。要匹配包括"\n"和"\r"在内的任何字符,请使用像"[\s\S]"的模式ci

(?:pattern) 非获取匹配 匹配但不获取匹配结果,不进行供之后使用 例如“industr(?:y|ies)”就是一个比“industry|industries”更简略的表达式。
(?=pattern) 非获取匹配 正向确定预查 ,不进行供之后使用 例如“Windows(?=95|98|NT|2000)”能匹配“Windows2000”中的“Windows”

(?!pattern) 非获取匹配 正向否认预查 例如“Windows(?!95|98|NT|2000)”能匹配“Windows3.1”中的“Windows”string

(?<=pattern) 非获取匹配 反向确定预查 “(?<=95|98|NT|2000)Windows”能匹配“2000Windows”中的“Windows”it

(?<!patte_n) 非获取匹配 反向否认预查 class

断言扩展

环视:sso

环视主要有如下4个用法: 语法

(?<=exp匹配前面是exp的数据 

(?<!exp匹配前面不是exp的数据 

(?=exp匹配后面是exp的数据 

(?!exp) 匹配后面不是exp的数据

 

需求:字母、数字组合,不区分大小写,不能纯数字或者纯字母,6-16个字符。

通用正则:^[a-z0-9]{6,16}$    字母数字组合,6-16个字符

    排除纯字母:(?!^[a-z]+$)

排除纯数字:(?!^[0-9]+$)

    组合起来:(?!^[a-z]+$)(?!^[0-9]+$)^[a-z0-9]{6,16}$

需求:字母、数字组合,不区分大小写,不能纯数字或者纯字母,6-16个字符。

通用正则:^[a-z0-9]{6,16}$  字母数字组合,6-16个字符

排除纯字母:(?!^[a-z]+$)

排除出数字:(?!^[0-9]+$)

组合起来:(?!^[a-z]+$)(?!^[0-9]+$)^[a-z0-9]{6,16}$

  1. 扩展部分:
  2. `[A-Z](?<=B)` [A-Z]范围等于B
  3. `[A-Z](?<!B)` [A-Z]范围排除B
  4. `(?!B)[A-Z]` [A-Z]范围排除B

附: js不支持(?<=exp和 (?<!exp语法

最后留下一句至尊提醒:.是万能字符,你们看着用,遇到换行使用[\s\S]替换.便可。

断言

零宽断言的意思的零宽度的断言

相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息