[請益] 正規表示 比對的內容包含任何字元

看板PHP作者 ( Yan™)時間10年前 (2015/09/19 15:48), 編輯推噓2(207)
留言9則, 3人參與, 最新討論串1/1
原文內容: <div> 測試一123<br /><a href="111.htm">測試二</a> </div> 使用 '/<div>(.*)<\/div>/i' 抓不到<div></div>內的資料。 1.是因為比對內容包含了空白、換行、符號 這個原因嗎?? 2.如果要比對的內容是任何(即任何字元符號英數空白換航等等字串都OK)這樣正規該如何下呢? 求解!! 萬分感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.163.118.241 ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1442648923.A.535.html

09/19 16:08, , 1F
主要是換行要另外寫,用.(點)不會包含
09/19 16:08, 1F

09/19 16:09, , 2F
試試/(?<=<div>)(\r\n|\n)*(.*)(\r\n|\n)*(?=<\/div>)/i
09/19 16:09, 2F

09/19 17:51, , 3F
感謝您 但有辦法就抓到一個比對資料嗎? 這樣方法會分三個
09/19 17:51, 3F

09/19 18:30, , 4F
感謝您 我把(.*)改成(\r\n|\n) 就可以了! 喔耶
09/19 18:30, 4F

09/19 20:02, , 5F
後面加個s 就可以了 '/<div>(.*)<\/div>/is'
09/19 20:02, 5F

09/19 20:03, , 6F
加s代表 . 要包含換行
09/19 20:03, 6F

09/19 20:06, , 7F
09/19 20:06, 7F

09/19 21:12, , 8F
哈哈 原來這麼簡單阿
09/19 21:12, 8F

09/20 02:37, , 9F
!學習了!感恩 終生受用
09/20 02:37, 9F
文章代碼(AID): #1L_HDRKr (PHP)
文章代碼(AID): #1L_HDRKr (PHP)