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.betmek A Bsize 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 Aher 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.zolduğunu Aeğer - jonesvası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ü ailk dönemden önce ve sonra değil.