我正在使用org.apache.commons.validator.UrlValidator
来验证网址。它对http://www.google.com返回true,但对www.google.com
我也想允许www.google.com。我将ALLOW_ALL_SCHEMES应用为参数,但它不起作用。如何自定义UrlValidator,使其对www.google.com
和http://localhost:8282/GFEReporting
也返回true。有没有办法定制这个,所以它可以采取所有方案,没有方案?请告诉我。
还是有其他办法吗?
提前致谢...
答案 0 :(得分:9)
UrlValidator validator = new UrlValidator() {
/** allow missing scheme. */
@Override
public boolean isValid(String value) {
return super.isValid(value) || super.isValid("http://" + value);
}
};
validator.validate("google.com");
答案 1 :(得分:1)
private boolean isValidUrl(String value) {
return UrlValidator.getInstance().isValid(value)
|| UrlValidator.getInstance().isValid("http://" + value);
}
这是@Sergey的简化答案(不扩展UrlValidator()
类)。