精華區beta Web_Design 關於我們 聯絡資訊
這是 Regular Expression(RE) 其中的兩個斜線 // 是宣告 RE 用的 例如 var aRE = /this is a regluar expression/; Regular Expression 是用來尋找/比對/取代某種特徵的字串用的 比方說上面的 aRE, 我們可以用 aRE 來檢查一個字串中有沒有 "this is a regular expression" 例如, aRE.test("blah blah blathis is a regular expressionblah"); 至於斜線後面的 i 是 modifier, 代表比對的時候忽略大小寫 所以 /perl/i 可以比對到 Perl pErl perL PERL 等 反斜線點 (\.) 就是代表點(.) 因為在 RE ,點(.)有特殊意義 所以當我們真的要檢查字串中有沒有點(.)的時候, RE 告訴我們在前面加一個反斜線 (\) 就行了 最後,在 RE 中 中括號 ([]) 也是有特殊意義的 簡單的用中文說他代表比對括號中任一個字元的其中一個 所以 /5\.[56789]/ 可以找到 5.5 5.6 5.7 5.8 5.9,但是找不到 5.1 5.2 5.X 5.% 結論就是, var ie55 = /msie 5\.[56789]/i.test( navigator.userAgent ); 可以不管大小寫地找到 "msie 5.5" "msie 5.6" "msie 5.7" "msie 5.8" "msie 5.9" 當 navigator.userAgent 中含有這些字串的時候, 我們就把這個 browser 視為 ie55 這就是這整句話說的故事。 ※ 引述《invers0412 (@@)》之銘言: : var ie55 = /msie 5\.[56789]/i.test( navigator.userAgent ); : 我知道是在作判斷browser version, 但是語法不懂 -- ╭════┬════┬════┬════┬════┬═─╭═╮╮ ║████ █▋◢█████ ███◣███◣ █▋║│ ║◤██◥███◤╰╮██ █◣ █ █◣ ◤█▋◢█║│ ╰╮██╭╯███◣╭╯██ ███◥█◤ ◣◥██◤╰╮ │║██║│█▋◥██████◥█◣ ████╰╮██ ║ ╰╰══┴┴════┴════┴════┴════┴╰════╯ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.30.52
invers0412:感謝<(_ _)> 220.228.96.198 05/16