urlをhttp://から始まるものに直すには?
babyA
[E-Mail]
1998/09/02(水) 21:15:15
perl の cgi での話です。
urlを複数含む文字列があってその url 全てを http:// から始まる形式に
直したいのですがどうするのが簡潔で良い方法なのでしょうか?
url は "index.html","./aaa.html","/bbb.html","
http://aaa/bbb/"
などいろいろな形式で文字列に含まれています。なお url の
ホスト名とパスは予めわかっています。
mo
[E-Mail]
1998/09/03(木) 10:41:12
$url =~ s,^(?!http://)/*,http://$host/,;
とか、配列を一喝処理したいなら
s,^(?!http://)/*,http://$host/, for(@url); # 最新の perl の文法だよん。
なんてのはどうでしょう。
なお、(?!regex) は perl5 で利用できる拡張形式で、
正規表現 regex にマッチしなければ真となります。
babyA
1998/09/03(木) 11:55:02
すみません、説明が足りなかったようです。
具体的に言うと文字列の中身は html ファイルを読んだものが入っています。
その中に href="aaa.html" や src="/bbb.gif" などの様に url がいくつか含まれています。
この url 部分を見つけて http:// から始まるように変換したいのですがうまい方法がわかりません。