如何通過正則表達式獲取img標簽的src屬性
1、部分正則語法介紹
\s 匹配任何空白字符,包括空格、制表符、換頁符等等。等價於 [ \f\n\r\t\v]。
? 匹配前面的子表達式零次或一次,或指明一個非貪婪限定符。要匹配 ? 字符,請使用 \?。
| 指明兩項之間的一個選擇。要匹配 |,請使用 \|。
. 匹配除換行符 \n 之外的任何單字符。要匹配 . ,請使用 \. 。
g 全文搜索
i 忽略大小寫
詳情可參考 http://www.runoob.com/regexp/regexp-syntax.html
2、match 方法介紹

詳情參考:http://www.w3school.com.cn/jsref/jsref_match.asp
3、使用正則表達式獲取所有 img 標簽

從圖中可以看出,使用正則表達式 /<img\b.*?(?:\>|\/>)/gi 可以將字符串中的 img 標簽進行匹配,並放到一個新數組中
關於 正則表達式 /<img\b.*?(?:\>|\/>)/gi 的解釋

首先 標簽的開始是 <
其后緊跟着 img
故使用 /<img\b 進行匹配
.*? 則對字符串進行最小匹配(下一個匹配(?:\>|\/>)出現時,.* 就失效)
img 標簽結尾 使用 > 或者 /> ,使用 (?:\>|\/>) 進行匹配
注:圓括號()會有一個副作用,是相關的匹配會被緩存,此時可用?:放在第一個選項前來消除這種副作用。
4、獲取 img 標簽對應的 src 屬性

從圖中可以看出,使用正則表達式 /\bsrc\b\s*=\s*[\'\"]?([^\'\"]*)[\'\"]?/i 可以將字符串中的 img 標簽進行匹配,並放到一個新數組中,數組下標為1,就是所需要的src屬性
關於 正則表達式 /\bsrc\b\s*=\s*[\'\"]?([^\'\"]*)[\'\"]?/i 的解釋

\bsrc\b 是把src當成一個單詞進行匹配
\s*=\s* 則是匹配 = 前后是否有空格(* 為0個以上,包括0)
[\'\"]? 進行最小匹配,src 一般用單引號或雙引號包裹
([^\'\"]*) 匹配不上單引號和雙引號的字符
注:這里沒有使用 g 進行全局匹配,是因為 img 標簽只有一個 src ,匹配到就可以結束了
5、總結
使用 /<img\b.*?(?:\>|\/>)/gi 對一個字符串進行全文匹配,獲取所需要的 img 標簽
使用 /\bsrc\b\s*=\s*[\'\"]?([^\'\"]*)[\'\"]?/i 對一個 img 標簽進行匹配,獲取所對應的 src 屬性
注:因為個人書寫手法的不一致,實際過程中坑你需要去除 \b \s 等一些特性限制,需根據實際需要進行修改
