Google 広告から生成されたこのスクリプトがあります。
<!-- HomePage_468x60 -->
<div id='div-gpt-ad-1383121038726-0' style='width:468px; height:60px;'>
<script type='text/javascript'>
googletag.cmd.push(function() { googletag.display('div-gpt-ad-1383121038726-0'); });
</script>
</div>
広告名、広告サイズ、広告 ID などの関連データを抽出しようとしています (したがって、head タグのスクリプトをレンダリングできます)。
次のような正規表現を使用してみました:
public static String GetTextBetween(string source, string leftWord, string rightWord)
{
return
Regex.Match(source, String.Format(@"{0}\s(?<words>[\w\s.:]+)\s{1}", leftWord, rightWord),
RegexOptions.IgnoreCase).Groups["words"].Value;
}
ここで、スクリプトと左の単語と右の単語を関数に送信します。たとえば、広告名を取得するために、次のように送信します。
GetTextBetween(ad, "<!-- ", " -->");
しかし、空の文字列で返されます。
誰でも私を助けてもらえますか?または、誰かがこれを行うためのより良い方法を持っていますか?
編集
一致ごとに個別のREGEXを使用すると思いますが、文字列div-gpt-ad-1383121038726-0
からこの文字列を取得するための正しい式が見つかりません。誰か助けてもらえますか?