Ben ancak başarı olmadan bu normal bir ifade yazmak için, kendimi çevrimiçi çalışıyor ve arama oldum.
Ben belirli bir URL belirli bir etki ve (PHP) bir iyi biçimlendirilmiş bağlantıdan olduğunu doğrulamak gerekir. Örneğin:
İyi Domain: example.com
Example.com öylesine iyi URL'ler:
- http://example.com/so/this/is/good
- http://example.com/so/this/is/good/index.html
- http://www.examle.com/so/this/is/good/mice.html#anchortag
- http://anysubdomain.example.com/so/this/is/good/wow.php
- http://anysubdomain.example.com/so/this/is/good/wow.php?search=doozy
Yani kötü URL'ler example.com itibaren:
Some notes: I don't care about "http" verus "https" but if it matters to you assume "http" always The code that will use this regex is PHP so extra points for that.
UPDATE 2010:
Gruber büyük bir URL regex ekler:
?i)\b((?:[a-z][\w-]+:(?:/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))
Görevinden bakınız: An Improved Liberal, Accurate Regex Pattern for Matching URLs