[PHP-users 7115] Re: preg_match()の正規表現で URLを抽出し
Shinichi Moritani
php-users@php.gr.jp
Wed, 24 Apr 2002 17:33:35 +0900
森谷です。
重松さん、ありがとうございました。
重松さんの方法で、何とか思ったような結果が得られました。
>#!/usr/local/bin/php -q
><?php
>$txt = "ほげhttp://192.160.0.1:8080/hoge.php?hoge=hogehogeうげ";
>$html = mbereg_replace(
> 'https?://'.
> '(([a-zA-Z0-9]+\.){1,}[a-zA-Z]+|(\d+.){3}\d+)'. // host
> '(:\d+)?'. // port
> '(/[-.!~*\d\w;/?:@&=+$,%#]+)?',
> '<a href="\0">\0</a>',$txt);
>echo $html;
>?>
>
>でどうでしょ?
>というか、その元の URL 抽出はかなりヘボイ正規表現なので、まともに書き直した方がよい
のでは。
確かにヘボイですね。
でも RFC に合わせなければならないようなものでもないですので、
簡単なものでOKなんです(^^ゞ
>そういえば、今日 PHP 4.2.0 が正式リリースとなったようです。
>これに入れ替えてもらってはどうでしょうか。>その業者
今日 phpinfo() で見たら、PHP 4.1.2 にバージョンアップされてました。
***************************
Name : Shinichi Moritani
Mail : ml@moritani.com
***************************