Регулярное выражение для проверки начинается с http: //, https: // или ftp: //

Я создаю регулярное выражение, чтобы проверить, начинается ли слово с http: // или https: // или ftp: // , мой код следующий:

     public static void main(String[] args) {
    try{
        String test = "http://yahoo.com";
        System.out.println(test.matches("^(http|https|ftp)://"));
    } finally{

    }
}

Он печатает false . Я также проверил сообщение stackoverflow Regex, чтобы проверить, начинается ли строка с http: // или https: //

Регулярное выражение кажется правильным, но почему оно не соответствует? Я даже попробовал ^ (http | https | ftp) \: // и ^ (http | https | ftp) \\: //

47
задан Community 23 May 2017 в 11:46
поделиться