1. 程式人生 > 其它 >XMLHttpRequest的相關屬性介紹

XMLHttpRequest的相關屬性介紹

什麼是正則表示式?

是構成搜尋模式的字元序列。

該搜尋模式可用於文字搜尋和文字替換操作。

一、元字元

元字元正則表示式
\d 0-9任意一個數字
[] 方括號之間的任意一個字元
[^] 非其中的任意一個字元
\w 數字、字母、下劃線
. 除換行符外的任意一個字元
| 或(多用於月份)
? 0-1次
+ 1-多次
* 0-多次
{,} 最少,最多
^ 開始(用於表單頁面)
$ 結束(用於表單頁面)

二、常見的正則表示式方法

1、手機號驗證的正則表示式

(一般手機號以1開頭有十一位)

^1[0-9]{10}$

1 // 手機號
2 var txt="13559123478";
3 var reg=/^1[0-9]{10}$/; 4 console.log(reg.test(txt));

(驗證比較精確的表示式)

^1[3|4|5|7|8][0-9]{9}$

1 var txt="13559123478";
2 var reg=/^1[3][0-9]{9}$/;
3 console.log(reg.test(txt));

2、郵箱正則表示式

(1)、只允許英文字母、數字、下劃線、英文句號以及中劃線

舉例:[email protected]

分析郵件名稱部分:

  • 26個大小寫字母表現為a-z A-Z
  • 數字表示為0-9
  • 下劃線表示為_
  • 中劃線表示為-

郵件表示式為:[a-zA-Z0-9_-]+

分析域名部分:12-34.com.cn

  • 域名類似 "##.##.##.##"組成
  • ##部分可以表示為 [a-zA-Z0-9_-]+
  • ".##"部分可以表示為 \.[a-zA-Z0-9_-]+
  • 多個".##"部分可以表示為 (\.[a-zA-Z0-9_-]+)+

域名部分可以表示為:[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+

最終表示式為:“^”匹配郵箱的開頭 “$匹配郵箱的結尾”

:: ^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$


(2)名稱允許漢字、字母、數字,域名只允許英文域名

::^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$

3、漢字正則表示式

::[\u4e00-\u9fa5]

// 中文
var txt="你";
var reg=/[\u4e00-\u9fa5]/;
//   \u4e00-\u9fa5   
//   \u4e00-\u4e00
console.log(reg.test(txt));

4、年月日正則表示式

1 ^((([0-9]{2})(0[48]|[2468][048]|[13579][26]))   #閏年,能被4整除但不能被100整除
2 |((0[48]|[2468][048]|[13579][26])00)   #閏年,能被400整除
3 -02-29)  #匹配閏年2月29日這一天。如果不是這一天,則由下面式子繼續匹配驗證。 
4 |([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3}) #平年(0001-99995 -(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))   #月日,1、3、5、7、8、10、12月有31天
6 |((0[469]|11)-(0[1-9]|[12][0-9]|30))   #月日,4、6、9、11月有30天
7 |(02-(0[1-9]|[1][0-9]|2[0-8])))   #平年2月只有28天,月日表示為【02-01至02-28】

5、密碼驗證

 1 /**
 2  * 密碼至少包含 數字和英文,長度6-20
 3  */
 4 String reg = "^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$";
 5 
 6  /**
 7    * 密碼包含 數字,英文,字元中的兩種以上,長度6-20
 8    */
 9  String reg = "^(?![0-9]+$)(?![a-z]+$)(?![A-Z]+$)(?!([^(0-9a-zA-Z)])+$).{6,20}$";
10 
11   /**
12     * 至少包含數字跟字母,可以有字元
13     */
14    String reg = "(?=.*([a-zA-Z].*))(?=.*[0-9].*)[a-zA-Z0-9-*/+.~!@#$%^&*()]{6,20}$";