javascriptの正規表現について質問です。
javascriptっていっても、使用言語はgasなのですが・・・
var data = UrlFetchApp.fetch(url); var strText = data.getContentText();
というコードで、変数strTextにhtmlを取得しています。
その内容が以下とします。
この際に、
"classが「A」かつ、「data=B」が付いていないDIVのouterHTML"を配列に格納したいのです。
html
1<div class="A" data="B"> 2 <div class="C"> 3 <div class="D"> 4 <a href="/">×外側のクラスはAですが、data=Bが入っているので取得しません</a> 5 </div> 6 </div> 7</div> 8<div class="A"> 9 <div class="C"> 10 <div class="D"> 11 <a href="/">取得します!!</a> 12 </div> 13 </div> 14</div> 15<div class="ZZZZZZZZZZ"> 16 <div class="C"> 17 <div class="D"> 18 <a href="/">×外側のクラスがZZZZZZZZZなので取得しません</a> 19 </div> 20 </div> 21</div> 22<div class="A"> 23 <div class="C"> 24 <div class="D"> 25 <a href="/">取得します!!</a> 26 </div> 27 </div> 28</div> 29<div class="A" data="B"> 30 <div class="C"> 31 <div class="D"> 32 <a href="/">×外側のクラスはAですが、data=Bが入っているので取得しません</a> 33 </div> 34 </div> 35</div>
つまり、
javascript
1var aryMatch = strText.match(【正規表現】); 2// aryMatchの内容 3// [ 4// "<div class="A"> 5// <div class="C"> 6// <div class="D"> 7// <a href="/">取得します!!</a> 8// </div> 9// </div> 10// </div>" 11// , 12// "<div class="A"> 13// <div class="C"> 14// <div class="D"> 15// <a href="/">取得します!!</a> 16// </div> 17// </div> 18// </div>" 19// ]
となるようにしたいのです。
正規表現に詳しい方、宜しくお願いいたします。