有効なオンラインURLと一致する正規表現を探しています。例えば正規の有効なURLと一致するPHP Regex
:
exmaple.com
http://exmaple.com
https://exmaple.com
www.exmaple.com
http://www.example.com
https://www.example.com
などの特殊なドメインと拡張子:
t.co
example.deals
sh.party
そしてそうではなく、2.3.3.1
ようftp
、get
クエリまたはURLのようなすべての複雑なものとは一致しません。
私は'#(www\.|https?://)?[a-z0-9]+\.[a-z0-9]{2,4}\S*#i'
を使用していましたが、の日付をと検出します。たとえば、3.3.2017
です。
私はすべての見つかったURLにget_headers
を適用し、このbecuaseを必要とする、と私は日付のような無効なURLのget_headers
を行うときに、私が取得:
get_headers(http://03.03.2017): failed to open stream: Connection timed out
TL; DR:私は探していますと一致する正規表現の場合は、のURLをget_headers()
に適用することができます。
ありがとうございます!
数字を含むトップレベルドメインはありますか?そして、btw 'deals'には5つのchrsがあります。 – JosefScript
@ JosefScriptは、 '12345.com'のようなドメインに問題はないようですが、数字の拡張子がないだけです。 –
正規表現は「オンラインURL」を伝えることはできません。パターンにのみ一致します。ドメインのパターンにマッチさせることも難しくなります。 'chris.inc'は会社名かドメインですか? – chris85