[過去ログ] Regular Expression(正規表現) Part13©2ch.net (1002レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
688(2): 2016/05/30(月)21:09 ID:IB3IbmGC(1/3) AAS
ソフトウェア板のwhitebrowserスレで質問しましたが人がいないようなので
ここで質問させてください。
<div class="aaa"></div>
<div class="bbb">
<p class="ccc">文字列komento
<div class="ddd">文字列<A href="外部リンク:eee >文字列</A>文字列</DIV></DIV>
webから文字列komentoの部分が欲しいんですが
if(line.match(/<p class="ccc">(.+)<div class="ddd">/)){
komento = RegExp.$1.strip();
continue;
}
だとぜんぜんヒットしません。
<p class="ccc">と文字列komentoは分断されてるみたいでヒットしません。
複数行にわたるときは(.+)を([\s\S]+)にすればよいと書いてあったんですがだめです。
よろしくお願いします。
692: 688 2016/05/30(月)22:52 ID:IB3IbmGC(2/3) AAS
お答えありがとうございます
>>689
だめです
>>690
だめでした
>>691
まったく初心者でプログラムわからない状態で人がつくったものを改造してるので
もっとがんばってみます
上のほうにネストはParser使えとか書いてありましたがこれは違うのでしょうか
if(line.match(/<div class="ddd">(.+)/)){
komento = RegExp.$1.strip();
continue;
}
こうやると 文字列<A href="外部リンク:eee >文字列</A>文字列</DIV></DIV> これはものすごいヒットするんですが
/<p class="ccc">(.+)/ だとぜんぜんだめで/<p class="c(.+)/ こうやると cc"> とヒットします
</p>が省略されてると無理なんでしょうか
693: 2016/05/30(月)23:10 ID:IB3IbmGC(3/3) AAS
var lines = request.responseText.split('\n');
for(var i = 0 ; i < lines.length ; i++) {
var line = lines[i].strip();
上のほうにこういうふうに書いてあります
もうひとつの文字列取得には
if(title == '' && line.match(/<\/h1>/)){
var lineContainsPrev = lines[i - 1].strip() + line;
if((lineContainsPrev.match(/<h1 .+<span id="title[^"]+">([^<]+).+<\/h1>/) ||
lineContainsPrev.match(/<h1 id="title[^>]+>(.+)<\/h1>/))){
title = RegExp.$1.strip();
}
}
こう書いてあります
なるほどi-1とかlineとか691さんの指摘でがんばってみます
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.039s