正則表達式

郵箱正則: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]替換.便可。

斷言

零寬斷言的意思的零寬度的斷言

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息