Разделить HTTP-адрес, ipv4 и ipv6 адреса
Можно ли гарантированно, "разделить" HTTP-адрес, ipv4 и ipv6 адреса ? Ну, то есть, есть к примеру 6 строк:
-"https://ru.stackoverflow.com/"
-"ru.stackoverflow.com"
-"www.ru.stackoverflow.com"
-"95.173.136.162"
-"2a03:2880:f10a:83:face:b00c:0:25de"
-"2a00:1450:4010:c0e::65"
Вот есть ли алгоритм, который позволит точно сказать, что в первых трех строках - это http-адресс, в 4 строке - это ipv4, а в 5 и 6 строках - ipv6 ?
Если бы не http-адреса, то все просто конечно: если есть "." - значит ipv4, если есть ":" - то ipv6. Но, в http - есть и "." и ":". Вот, что то не могу сообразить.