以前、似たような記事を書いたが、さらに強化版も。
RegExpを使えばかなり柔軟に書く事が出来るので、その方法を四の五の能書きたれず実際のコードで紹介。
次のコードは、リファラからキーワードを取り出す方法。
//リファラ取得。なんでrefererではなく、referrerなんでしょうね。
var referrer = document.referrer;
//RegExpで対象文字列を設定。ここは正規表現可。
var nowurl = new RegExp( "q=" );
//q=という文字列が見つかったら。
if( referrer.match( nowurl ) )
{
//なんだか非効率ですがいろいろなパターンを表現するため、敢えて記述
var result = referrer.match(/q=([^&]*)/);
//$1や$2などで、正規表現中の(~~)の値を取得出来ます。
result = RegExp.$1;
//キーワードなので、+(つまり空白)は排除
var keywords = result.split("+");
//キーワード一つ一つに関してループ開始。
for( i=0; i<keywords.length; i++ )
{
//日本語の場合もあるのでデコード
key = decodeURI( keywords[i] );
//これで、/key/giというようになる。keyの部分は変数な点を留意
var reg = new RegExp( key,"gi");
}
}