Bir e-posta adresi, bu e-posta adresine uygulanan bir dönüşümün sonucu ve ikinci bir e-posta adresi verildiğinde, aynı e-posta adresinin çıktısını ikinci e-posta adresine uygulayın.
E-posta adreslerinin tümü aşağıdaki yapıya sahip olacaktır:
Alfasayısal karakterler ve en fazla bir .
(yerel kısım) @
içeren bir pozitif uzunluk dizesi, ardından bir sembol, ardından alfasayısal sumboller (alan adı) ve ardından bir .
sembol ve son pozitif uzunluk dizesi içeren bir pozitif uzunluk dizesi gelir. alfasayısal karakterler (TLD) içerir.
İzin verilen dört dönüşüm vardır:
- Kimlik (değişiklik yok). (
a.b@c.d -> a.b@c.d
) - Sadece yerel kısmı döndürme (önceki her şey
@
) değiştirilmemiş (a.b@c.d -> a.b
). - Yerel parçanın döndürülmesi,
.
eğer varsa, her yarının ilk sembolü büyük harfle yazılır. (a.b@c.d -> A B
). - Yalnızca alan adını (
@
ve son arasındaki her şeyi) döndürmek.
değiştirilmedi. (a.b@c.d -> c
).
Birden fazla dönüşüm mümkün olduğunda, olasılıklardan herhangi birinin çıktısını verebilirsiniz. Başlangıç ve sonunda çıktı Boşluk meselesi değil, ancak ne Ayrılırsak ortasında (yani yok a.b
etmek A B
size Ayrılırsak Ortada [ve başlangıç ve sonunda çıktı herhangi bir sayıda] sadece bir boşluk olmalıdır, ancak a.
, daha sonra A
her iki taraftaki herhangi bir sayıda boşluk kabul edilebilir).
Örnekler ( 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
Genel kurallar ve boşluklar geçerlidir.
@
son ile son arasındaki kısım .
) döndürmektir . Yerel kısım ve alan adı her ikisi de olduğundan chicken
, 2. veya 4. dönüşüm olup olmadığı belirsiz
A
[arka boşlukla] olduğu testte ikinci girişin Jones
[ön boşlukla] olduğu)?
.jones@x.1, Jones, a.@3.z
olduğunu A
eğer - jones
vasıta eşleştirme kısmı birinci dönem ve @ sembolü arasındaki bir parçası olduğuna eşleştirilir. Ancak bu boş bir dize ile sonuçlanır çünkü a
ilk dönemden önce ve sonra değil.