How can I check if a string is a valid URL?
For example:
http://hello.it => yes
http:||bra.ziz, => no
If this is a valid URL
For me, I use this regular expression:
/^(http|https):\/\/[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(:[0-9]{1,5})?(\/.*)?$/ix
Option:
i
- case insensitivex
- ignore whitespace in regexYou can set this method to check URL validation:
def valid_url?(url)
return false if url.include?("
To use it:
valid_url?("http://stackoverflow.com/questions/1805761/check-if-url-is-valid-ruby")
Testing with wrong URLs:
http://ruby3arabi
- result is invalidhttp://http://ruby3arabi.com
- result is invalidhttp://
- result is invalidhttp://test.com\n
(Just simply check "