精華區beta RegExp 關於我們 聯絡資訊
想請問一下 有個小問題 就是當我在textarea中按下enter換行會抓不到 ex: 我用 /<img.+src="(.+?)".+/>/ 來抓取src中的路徑 <textarea> <img src ="xxx.jpg" alt=""/> </textarea> 這樣是可以正確抓到xxx.jpg 但是我如果在中間隨便一個位置按下enter斷行 例如在 alt="中間斷行" 就會抓取不到 請問是什麼問題呢?? <textarea> <img src ="xxx.jpg" alt=" "/> </textarea> 後來有試過先把textarea的內容中的\n取代掉好像就沒問題了?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.25.153.110
hsnucsc:應該是因為. 是所有char, 但是不包括'\n'吧 05/28 00:50
> -------------------------------------------------------------------------- < 作者: TonyQ (沉默是金。) 看板: RegExp 標題: Re: [問題] 用正規表示法檢查textarea中內容 時間: Fri May 28 16:53:57 2010 ※ 引述《a613204 (胖胖)》之銘言: : 想請問一下 有個小問題 : 就是當我在textarea中按下enter換行會抓不到 ex: : 我用 /<img.+src="(.+?)".+/>/ 來抓取src中的路徑 : <textarea> : <img src ="xxx.jpg" alt=""/> : </textarea> : 這樣是可以正確抓到xxx.jpg : 但是我如果在中間隨便一個位置按下enter斷行 例如在 alt="中間斷行" 就會抓取不到 : 請問是什麼問題呢?? : <textarea> : <img src ="xxx.jpg" alt=" : "/> : </textarea> : 後來有試過先把textarea的內容中的\n取代掉好像就沒問題了?? 這是因為你沒有開multi-line模式, 大部分預設的 client 都是沒有開的。 一般而言你可以用 m 這個修飾字開, 或者是用 (?m) 這個符號放在regex最開頭。(視語言而定) -- 我:一半的日子讓你說,我聽你說你的所有______________________________________ ______________________________________一半的日子我想說,對你說過去的所有:我 _______________________________________________________ 在討論中妥善扮演兼具聆聽與分享的角色,是我們一生的課題。 _______________________________________________________ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.34.160.41
No:m是配合^和$來匹配多行模式的開頭結尾 05/28 18:43
No:JavaScript似乎沒有讓.可以匹配\n的flag 05/28 18:45
a613204:恩 後來我是先用replace把所有的\n取代掉 05/31 18:55