搜尋器

Reference: JavaScript 30 先備知識 fetch (功能類似ajax) nodeList 轉 array(Spread Operator) 陣列相關方法1 Regex:大小寫不敏感【i】、找出所有【g】、正規表達式 join()(陣列轉字串) 模板字符串 箭頭函數 範例 form.search-form input.search(type=’text’, placeholder=’City or State’) ul.suggestions li Filter for a city li or a state html box-sizing: border-box background: #ffc600 font-family: ‘helvetica neue’ font-size: 20px font-weight: 200 * box-sizing: inherit &:before, &:after box-sizing: inherit input width: 100% padding: 20px […]

regex【i】不區別大小寫

功能 讓字串不區分大小寫,也能通過正規表達式檢査。 應用實例:搜尋不用區分大小寫,也能找到同樣的内容。 類似的東西:regex【g】找出所有 範例 方法一【/i】 i代表 insensitive ,對大小寫不敏感。 const regex=/apple/i; const str1=”APPLE”; const str2=”Apple”; const str3=”apple”; str1.match(regex);//[“APPLE”] str2.match(regex);//[“Apple”] str3.match(regex);//[“apple”] //不論大小寫(或混用)都能通過驗證 方法二【new RegExp】 使用時機:需要檢査的字串不是固定値,而是變數時(像是使用者鍵入的搜尋字詞) 寫法跟【/i】不同,但是效果相同。 const regex=new RegExp(“apple”, “i”); const str1=”APPLE”; const str2=”Apple”; const str3=”apple”; str1.match(regex);//[“APPLE”] str2.match(regex);//[“Apple”] str3.match(regex);//[“apple”]

match() 與 test()

功能 兩者都是搭配正規表達式的Method match() 字串.match(正規表達式); //回傳比對出的部分字串結果 //若比對不到東西,則回傳null const str=”apple”; const check=/[a-c]/; str.match(check);//[“a”] test() 正規表達式.test(字串); //有比對到回傳true,沒有則回傳false const str=”apple”; const check=/[a-c]/; check.test(str);//true

正規表達式

説明 正規表達式,是專門用來處理字串邏輯的條件語法。 常常用在 input 表單上,檢査使用者輸入的内容有沒有符合特定格式。 諸如信用卡號格式驗證,密碼強度驗證等等。 相關方法:match(),test() 語法 宣告正規表達式 正規表達式的前後要各用1個斜線/包起來(有點像字串需要用”包起來)。 const str=”abcde”; const check=/abc/; str.match(cri);//[“abc”] //回傳 被找到的字串 if(str.match(cri)){ console.log(true); //↑通常驗證表單會寫成這個形式,裡面放通過驗證後的動作 }else{ console.log(false) }//true 尋找某區間内文字 設定檢索區間: [a-e] a為開始値,e為終止値。 const str=”apple”; const check=/[a-c]/;//尋找有沒有 a,b,c 這3個字母 //※寫成/[a-c]/g會比較好(下面會説明) //※也可以比對多重區間(下面説明) str.match(check)//[“a”] if(str.match(cri)){ console.log(true); }else{ console.log(false); }//true ←但只有 a 有被找到而已,pple並沒有被找到 /*****注意***** ※這個例子match是寬鬆尋找方法,只要有1個字元被找到,就會跑出true *************/ 尋找全部【/g】 參考這篇文章 一般情況下,match只會1次比對一個字串字元而已,所以回傳値只會吐出第1項符合的字元。 如果要叫他吐出所有,就要使用/g←放在正規表達式的最後面 ※但如果是用 if(str.match(check)) 的話不使用 /g […]