SQLの窓

2009年12月27日


JavaScriptの正規表現

このページのリンクらしき文字列を全て取得します。




function getLink1() {
	var str = document.getElementsByTagName("BODY")[0].innerHTML;
	var arr = str.match(/<a[^>]+>/ig);
	str = "";
	var len = arr.length;
	for( i = 0; i < len; i++ ) {
		str += arr[i] + "\n"
	}
	document.getElementById("resultLinkText").value = str;
}
function getLink2() {
	var str = document.getElementsByTagName("BODY")[0].innerHTML;
	var arr = str.match(/<a[\s\S]+?>/ig);
	str = "";
	var len = arr.length;
	for( i = 0; i < len; i++ ) {
		str += arr[i] + "\n"
	}
	document.getElementById("resultLinkText").value = str;
}

function getLink3() {
	var str = document.getElementsByTagName("BODY")[0].innerHTML;
	var arr = str.match(/<a[\s\S]+?a>/ig);
	var arr2;
	
	str = "";
	var len = arr.length;
	for( i = 0; i < len; i++ ) {
		var arr2 = arr[i].match(/>(.+)</i);
		try {		
			str+= arr2[1] + "\n";
		} catch(e){}
	}
	document.getElementById("resultLinkText").value = str;
}
※ BODY より取得するので、IFRAME 内は対象外です
※ <a[^>]+> は、<a で始まって、> 以外が1つ以上続いて > で終わると言う意味です。
※ <a[\s\S]+?> は、<a で始まって、
任意の文字が1つ以上続いて > で終わる最短の文字列と言う意味です。
※ <a>〜</a> の 〜は単純には取得できません 一旦取得したアンカーより内側の文字列を取得しています ※ /ig の i は、大文字小文字を区別しないという意味です。 ※ /ig の g は、全ての対象を最後まで探すという意味です。 ■ もう少し詳しく JavaScriptの正規表現


posted by lightbox at 2009-12-27 20:05 | JavaScript 正規表現 | このブログの読者になる | 更新情報をチェックする
container 終わり



フリーフォントで簡単ロゴ作成
フリーフォントでボタン素材作成
フリーフォントで吹き出し画像作成
フリーフォントではんこ画像作成
ほぼ自由に利用できるフリーフォント
フリーフォントの書体見本とサンプル
画像を大きく見る為のウインドウを開くボタンの作成

CSS ドロップシャドウの参考デモ
イラストAC
ぱくたそ
写真素材 足成
フリーフォント一覧
utf8 文字ツール
右サイド 終わり
base 終わり