1. 程式人生 > >javaScript正則表達式入門

javaScript正則表達式入門

描述 b+ tr1 bbbb bubuko repl log 標識 ace

1.教科書級別概念:正則表達式(regular expression)描述了一種字符串匹配的模式(pattern),

可以用來檢查一個串是否含有某種子串、將匹配的子串替換或者從某個串中取出符合某個條件的子串等。

(紙上得來終覺淺 啊!!!) 

2.寫法

(1). var reg=/a/; (ps:簡寫的方式可以優化性能)

(2). var reg= new RegExp("a") ; (ps:需要傳入參數就可以這樣寫)

附圖三張:

技術分享圖片

技術分享圖片

技術分享圖片

3.方法

  (1).test:正則去匹配字符串,如果匹配成功就返回真,如果匹配失敗就返回假 用法: 正則表達式.test(string)

    舉起我們手中的栗子:

    var str1="12345687";

    var reg1=/\D/; //非數字

    console.log(reg1.test(str1)) ; //false   

  (2).search: 正則去匹配字符串,如果匹配成功就返回匹配成功的位置,匹配失敗返回-1 用法:string.search(正則表達式)

   栗子:

var str2="abf";

   var reg2=/B/i;

   console.log(str2.search(reg2)); // 1

  (3).match:正則去匹配字符串,如果匹配成功就返回匹配成功的數組,匹配失敗返回null 用法:string.match(正則表達式)

栗子:

   var str3="dhaidha141frjn5515405";

   var reg3=/\d/g; //正則匹配成功就會結束,不會繼續匹配;如果想全部查找,就要加標識 g(全局匹配) \d 代表的是匹配數字

   console.log(str3.match(reg3)); // ["1", "4", "1", "5", "5", "1", "5", "4", "0", "5"]  ps:匹配成功,就返回匹配成功的數組 匹配失敗就返回null

  (4).replace:正則去匹配字符串,匹配成功的字符去替換成新字符

   var str4="aaacc";

   var reg4=/a+/g;

   console.log(str4.replace(reg4,"b")); //bcc 

 4.這裏說幾個基礎語法,以方便我們更好的和正則表達式溝通 哈哈哈

  (1) * , +, ?

  栗子:

  var str="abbbbb";

  var res=/ab*/; //表示一個字符串有一個字母a後面跟著零個或者若幹個b (0 or 若幹)

var res=/ab+/; //表示一個字符串有一個字母a後面跟著至少一個或者若幹個b (1 or 若幹)

  var res=/ab?/; //表示一個字符串有一個字母a後邊跟著零個或者一個b (0 or 1)

  var res=/a?b+$/; //表示一個字符串的結尾有零個或者一個a後面跟著至少一個或者若幹個b 如 abbbbc  

  (2) { } 代表範圍

   var str="abb";

   var res=/ab{2}/; //表示有一個字符串有一個字母a後面跟著2個b

var str0="abbbbbb";

   var res=/ab{3,}/; //表示一個字符串有一個字母a後面跟著至少3個或者更多個b

   var res=/ab{1,5}/; //表示一個字符串有一個字母a後面跟著至少1~5個b

  (3) [ ] 方括號表示某些字符允許在一個字符串中的某一特定位置出現

   var str="15228";

    var res=/[0-9]/; //一個字符串是0-9之間的數字

   

    var str1="a14545dajhfa";

    var res=/^[a-zA-Z]/; //一個字符串以字母開頭的   

      

   今天的正則表達式入門先到這裏,我們下期見~~~

   

     

     

    

javaScript正則表達式入門