Если у вас есть строка, которую нужно проверить на то, является ли её значением корректным URL адресом, можно воспользоваться следующим регулярным выражением:
"^(https?|ftp|file)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]"
Исходный код
public class RegexURL { public static void main(String[] args) { System.out.println(checkUrl("https://java-lessons.ru/regex/")); // true System.out.println(checkUrl("file:///home/alex/java-lessons.ru/")); // true System.out.println(checkUrl("https://example.com\\test")); // false } public static boolean checkUrl(String s) { return s != null && s.matches("^(https?|ftp|file)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]"); } }
Как проверить URL с помощью регулярного выражения