js正則表達式,判斷字符串是否以數字組結尾,並取出結尾的數字
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>js正則表達式,判斷字符串是否以數字組結尾,並取出結尾的數字</title> </head> <script src="js/jquery.js"></script> <body> <div id="main"> <ul> <li>席位1</li> <li>席位2</li> <li>席位13</li> <li>席99位88</li> <li>席位</li> <li>108</li> <li>007</li> </ul> </div> </body> <script type="text/javascript"> $(function() { //獲取dom對象集合 var doms = $("#main").find("ul li"); for(var i=0; i<doms.length; i++){ //注意:這里在遍歷內部直接用中括號獲取到的是js對象,需要轉換為jQuery對象 var dom = $(doms[i]); // console.log(dom.prop("outerHTML")); //測試是否獲取到對應的dom對象 var name = dom.text(); //目的:判斷name是否以數字串結尾,若是,取出其數字串 //定義正則【g表示全局匹配,$標識以其結尾,小括號表示小分組也就是exec方法要捕獲的部分】 var reg = /(\d+)$/g //匹配正則獲取小分組捕獲結果 var result = reg.exec(name); // result 是一個對象或者說是一個數組 ["88", "88", index: 4, input: "席99位88"] if(result){//如果沒有匹配到,則result為null var matchNum = result[1];//結果數組中角標為1的值就是我們捕獲的正則小分組中的串 console.log(matchNum); } } }); //其中涉及到的知識請參考博客 js中的正則表達式入門 </script> </html>
結果: