Re: [問題] javascript 的 保存匹配

看板RegExp (正規表示式 Regular Expression)作者 (KID)時間12年前 (2012/12/15 00:09), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
※ 引述《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

12/15 07:29, , 1F
感謝
12/15 07:29, 1F
文章代碼(AID): #1GoqzJJE (RegExp)
文章代碼(AID): #1GoqzJJE (RegExp)