improve the regular expression for URL, I think #2 should be fixed