1. ホーム
  2. php

[解決済み] URL の PHP 検証/正規表現

2022-06-24 18:10:57

質問

私はURLのための簡単な正規表現を捜していました、誰かうまくいく便利なものをもっていますか? 私はzend frameworkの検証クラスで1つを見つけられず、いくつかの実装を見ました。

どのように解決するのですか?

いくつかのプロジェクトでこれを使いましたが、問題に遭遇したことはないと思います。しかし、網羅的ではないと思います。

$text = preg_replace(
  '#((https?|ftp)://(\S*?\.\S*?))([\s)\[\]{},;"\':<]|\.\s|$)#i',
  "'<a href=\"$1\" target=\"_blank\">$3</a>$4'",
  $text
);

末尾のランダムなガラクタのほとんどは、以下のような状況に対処するためのものです。 http://domain.com. のような状況に対処するためのものです(末尾のピリオドにマッチしないようにするため)。私はそれをきれいにすることができると確信していますが、それが機能したので。私は多かれ少なかれ、プロジェクトからプロジェクトへそれをコピーしてきました。