Если только вы действительно, действительно не должны выполнять IP-адрес проверка , я также предлагаю вам упростить регулярное выражение, потому что этот зверь слишком сложен для того, чтобы сопоставлять только IP часть "и" часть порта ". Мое предложение будет
(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}):(\d{1,5})
Группы 1 и 2 будут содержать IP и порт соответственно. А вышесказанное уже сложнее, чем должно быть, ИМХО даже чего-то такого простого, как этого было бы достаточно:
(\d+\.\d+\.\d+\.\d+):(\d+)
Обратите внимание, что двойная обратная косая черта обязательна для строк Java, а не для регулярных выражений, поэтому я их пропустил.