I'm using this PHP function for validate an URL.
$url = preg_replace("/[^A-Za-z0-9-/.:]/", "", trim($url));
$url = preg_replace('%^(?!https?://www.).*%', 'http://www.$0', $url);
But, this isn't perfect for me. I want to this controls :
1 - Is it starting with http:// or https:// ? If not, add http (or https)
2 - If it hasn't subdomain and if it hasn't www , add . But if it has subdomain don't add www.
Examples :
example.com
CONVERT -> http://www.example.com
www.example.com
CONVERT -> http://www.example.com
subdomain.example.com
CONVERT -> http://subdomain.example.com
http://subdomain.example.com
CONVERT -> http://subdomain.example.com
So, I need improve my REGEX pattern. But I can't. How can I use this?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…