Biorąc pod uwagę adres e-mail, wynik transformacji zastosowanej do tego adresu e-mail oraz drugi adres e-mail zwracają wynik tej samej transformacji zastosowanej do drugiego adresu e-mail.
Wszystkie adresy e-mail będą miały następującą strukturę:
Ciąg o długości dodatniej zawierający znaki alfanumeryczne i co najwyżej jeden .(część lokalna), po którym następuje @symbol, po czym ciąg o długości dodatniej zawierający alfanumeryczne znaki sumboliczne (dziedzina), po którym następuje .symbol i ostatni ciąg o długości dodatniej zawierający znaki alfanumeryczne (TLD).
Możliwe są cztery transformacje:
- Tożsamość (bez zmian). (
a.b@c.d -> a.b@c.d) - Zwracanie tylko części lokalnej (wszystko przed
@) niezmodyfikowanej (a.b@c.d -> a.b). - Zwracanie części lokalnej podzielonej na „
.jeśli jest obecny”, z pierwszym symbolem każdej połowy pisanym wielkimi literami. (a.b@c.d -> A B). - Zwracanie tylko domeny (wszystko między
@ostatecznym.) niezmodyfikowanym. (a.b@c.d -> c).
Gdy możliwa jest więcej niż jedna transformacja, możesz dać wynik dowolnej z możliwości. Białe spacje na początku i na końcu wyjścia nie mają znaczenia, ale na środku ma to znaczenie (tzn. Jeśli podzielisz się a.bna A B, powinna być tylko jedna spacja na środku [i dowolna liczba na początku i na końcu wyjścia], ale jeśli podzielisz a., wówczas Adowolna liczba spacji po obu stronach jest akceptowalna).
Przykłady ( input | output):
john.doe@gmail.com, John Doe, phillip.maini@gmail.com | Phillip Maini
John.Doe@gmail.com, John Doe, Phillip.Maini@gmail.com | Phillip Maini
foo.bar@hotmail.com, foo.bar, gee.whizz@outlook.com | gee.whizz
foo.bar@hotmail.com, foo.bar, gEe.Whizz@outlook.com | gEe.Whizz
rodney.dangerfield@comedy.net, comedy, michael.scott@office.0 | office
.jones@x.1, Jones, a.@3.z | A
.jones@x.1, .jones@x.1, a.@3.z | a.@3.z
.jones@x.1, .jones, a.@3.z | a.
.jones@x.1, x, a.@3.z | 3
.@b.c, .@b.c, 1@2.3 | 1@2.3
john.jones@f.f, John Jones, 1in.thehand@2inthe.bush | 1in Thehand
chicken.soup@q.z, Chicken Soup, fab@ulou.s | Fab
lange@haare.0, lange, fat.so@fat.net | fat.so
Lange@haare.0, Lange, fat.so@fat.net | {fat.so, Fat So} # either acceptable
chicken@chicken.chicken, chicken, horse@pig.farm | {horse, pig} # either acceptable
Obowiązują zwykłe zasady i luki.
@i końcową .). Ponieważ część lokalna i dziedzina są jednocześnie chicken, nie jest jasne, czy jest to druga czy czwarta transformacja
A [z końcową spacją], aby drugie wejście było Jones[z wiodącą spacją])?
.jones@x.1, Jones, a.@3.z jest A- jeśli jonesjest dopasowany co oznacza, że część dopasowanie jest część pomiędzy pierwszym okresie i symbolu @. Ale to spowodowałoby pusty ciąg, ponieważ ajest przed pierwszym okresem, a nie po nim.