看板 Perl 關於我們 聯絡資訊
※ 引述《DarkKiller (System hacked)》之銘言: : ※ 引述《justinC (無)》之銘言: : : $num="877711117"; : : $num=~s/(\d+)(\d\d\d)/$1,$2/; : : print $num; : : 以上這段會印出 877711,117 : : 請問為什麼(\d+)不會比對全部 而留了三個數字 : : 看書的疑問... : : 謝謝!~ 謝謝回答 : 因為照你說的就 match 不到後面的 (\d\d\d)。 這裡還搞不清楚,我以為(\d+)會把全部數字match到,結果他留了最後三個數字,難道從後面比對回來? : 另外一點,雖然預設是 greedy,不過還是加一下 ^ 與 $ 吧... 感謝提醒 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.221.120.127