看板 RegExp 關於我們 聯絡資訊
※ 引述《C4891 (C4891)》之銘言: : 以php來說 : $a = 'A111 B222 C333'; : preg_match_all('/\D(\d+)/',$a, $out); : print_r($out); : 得到的結果是 : Array ( [0] => Array ( [0] => A111 [1] => B222 [2] => C333 ) : [1] => Array ( [0] => 111 [1] => 222 [2] => 333 ) ) : 可以只取得 (\d+) 匹配到的 ["111", "222", "333"] : 而javascript : var a = 'A111 B222 C333'; : a.match(/\D(\d+)/) 得到的結果是 ["A111", "111"] : 可以把 (\d+) 匹配到的 ["111"] 單獨抓出來 : a.match(/\D(\d+)/g) 得到的結果是 ["A111", "B222", "C333"] : 我想要的是["111", "222", "333"] : 為什麼這樣就無法像上面那樣把 (\d+) 匹配到的單獨抓出來? var a = 'A111 B222 C333'; var pattern = /\D(\d+)/g; var match; while (match = pattern.exec(a)) { alert(match); } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 36.225.169.54
C4891:感謝 12/15 07:29