Wyzwanie
Podając prawidłowy goo.gl
skrócony link, wyślij oryginalny adres URL.
Przykład
goo.gl/qIwi3N
dałby coś takiego https://codegolf.stackexchange.com/
. W przypadku danych wejściowych możesz wybrać opcję https?://
na początku, możesz wybrać opcję www.
przed goo.gl
, a także możesz pozbyć się tego, goo.gl
jeśli chcesz tylko końca adresu URL. Ukośnik na końcu jest opcjonalny dla wejścia i wyjścia. Tak więc twoje dane wejściowe będą pasować do wyrażenia regularnego (https?://)?(www\.)?(goo\.gl/)?[A-Za-z0-9]+/?
. W przypadku danych wyjściowych możesz wybrać, czy chcesz wypisać https?://
, czy nie www.
, i czy wypisać ukośnik końcowy. Jednak trzeba być zgodne z formatowania I / O .
Powiem, że nie musisz być spójny z https
vs. http
dla danych wyjściowych (ale musisz być konsekwentny dla danych wejściowych), o ile jesteś zgodny z tym, czy uwzględnisz całą https?://
część.
Przypadki testowe
Są one zapisywane bez wejściowego ukośnika; https://
nie www.
, nie; tak https://
, nie www.
i tak końcowy ukośnik na wyjściu.
input -> output
goo.gl/HaE8Au -> https://codegolf.stackexchange.com/
goo.gl/IfZMwe -> https://stackoverflow.com/
goo.gl/JUdmxL -> https://chat.stackexchange.com/rooms/240/the-nineteenth-byte
Założenia
- Możesz założyć, że skrócony link nie będzie wskazywał na inny skrócony link i że witryna docelowa zwróci kod statusu
2xx
lub4xx
(brak przekierowań).
Możesz przejść tutaj i wprowadzić adres URL, aby zastosować odwrotną operację: https://goo.gl/
www.
robi różnicę. W większości przypadków jest to ten sam serwer, do którego się odnosi. Spróbuj na przykład http://pks.mpg.de
i http://www.pks.mpg.de
. Pierwszego nie można rozwiązać, podczas gdy drugiego można.