HTMLの文字列からstyle属性を含むタグを抜きだそうと考えています。gtihubの方で以下のようなパターンを教えて頂いたのですが、見た目が複雑で完全に理解できておりません。
javascript
1// パターン1 2var sampleReg = /\<\s*([^\s\>]+)((?:[^\>]*\bid[ \t]*="([^"\\]*(?:\\.[^"\\]*)*)"|[^\>]*)[^\>]*)style="([^"\\]*(?:\\.[^"\\]*)*)"((?:[^\>]*\bid[ \t]*="([^"\\]*(?:\\.[^"\\]*)*)"|[^\>]*)[^\>]*\>)/g
特に上記の中でも、下記のコードの(?:\\.
が何故必要なのか理解できていません。もしご存知の方がいらっしゃいましたら分かりやすく解説して頂けないでしょうか?何卒よろしくお願いいたします。
javascript
1// パターン1の後半の一部 2var sampleReg_part = /\bid[ \t]*="([^"\\]*(?:\\.[^"\\]*)*)"/g
なお、上記のコードはこのような意味だと認識しております。
\bid
区切り文字とidの文字列を含む[ \t]*
文字列idの後ろに半角スペースやタブが0文字以上連続="
文字列="を含む[^"\\]*
文字列"と\以外の文字0以上が連続(?:\\.
\と改行以外の1文字 ←何故?[^"\\]*
4と同じ
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/05/06 01:17 編集
2016/05/06 01:29
2016/06/10 09:03