- ベストアンサー
3つ目のスラッシュまでを取り出す方法
例えばhttp://www.hoge.com/aaa/bbb.htmのような文字列データがあり、そこから3つめのスラッシュまでの http://www.hoge.com/のみを取り出したい場合どうしたらよいのでしょうか? 言語はPERLです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
色々とあるでしょうけどこんなんは如何でしょうか my $str = "http://www.hoge.com/aaa/bbb.htm?"; my @Arr = split(/\//, $str); $ret = join('/', $Arr[0], $Arr[1], $Arr[2]) . "/"; print "[$ret]\n"; スマートじゃないっす
その他の回答 (1)
- moon_night
- ベストアンサー率32% (598/1831)
回答No.2
こんな感じで。 $url = 'http://www.hoge.com/aaa/bbb.htm'; if ($url =~ /(http:\/\/[^\/]*\/)/) { $hit = $1; } print $hit; print "<br>\n"; if ($url =~ /([^\/]*\/{3}?)/) { $hit = $1; } print $hit; print "<br>\n";
質問者
お礼
ありがとうございました。
お礼
なるほど・・・splitで/毎に分割して配列に保存の後、3つ目の添え字までをつなぐのですね。言われると「はぁはぁ」と納得します。 ありがとうございました。