This script generates random personal names. The words are chosen from the list of most last names and first names in Hungary, according to some freely available ministry records.
Pass a single number as the command line argument to tell how many names to generate. Output is encoded utf-8.
The output seems believable if you only generate a few names, but once you need lots of names you'll want something more sophisticated, for a long sequence of names generated with this simple method is too suspicious.
Here's some example output.
Kiss Bálint Borbély Tünde Kinga Fehér Irma Kis Tünde Kerekes Tamás
use warnings; our @frequentv = split " ", " Nagy Kov\xe1cs T\xf3th Szab\xf3 Horv\xe1th Varga Kiss Moln\xe1r N\xe9meth Farkas Balogh Papp Tak\xe1cs Juh\xe1sz Lakatos M\xe9sz\xe1ros Simon Ol\xe1h Fekete R\xe1cz Szil\xe1gyi T\xf6r\xf6k Feh\xe9r G\xe1l Bal\xe1zs Pint\xe9r Sz\x{171}cs Kocsis Fodor Kis Szalai Magyar Sipos Ors\xf3s Luk\xe1cs Bir\xf3 Guly\xe1s Kir\xe1ly Katona L\xe1szl\xf3 Fazekas S\xe1ndor Boros Jakab Kelemen Somogyi Antal Vincze Heged\x{171}s F\xfcl\xf6p Orosz Bogd\xe1n Veres De\xe1k V\xe1radi Balog Budai B\xe1lint Sz\x{151}ke Pap Bogn\xe1r Vass V\xf6r\xf6s P\xe1l Ill\xe9s Sz\xfccs Lengyel F\xe1bi\xe1n Bodn\xe1r Hal\xe1sz Hajdu G\xe1sp\xe1r Kozma P\xe1sztor Bakos Sz\xe9kely Major Dud\xe1s Nov\xe1k Heged\xfcs J\xf3n\xe1s M\xe1t\xe9 Orb\xe1n So\xf3s Vir\xe1g Barna Nemes Pataki Szekeres Tam\xe1s Farag\xf3 Borb\xe9ly Balla Barta V\xe9gh Kerekes Dobos Kun P\xe9ter Csonka "; our @frequentf = split " ", " L\xe1szl\xf3 Istv\xe1n J\xf3zsef J\xe1nos Zolt\xe1n S\xe1ndor Ferenc G\xe1bor Attila P\xe9ter Tam\xe1s Tibor Zsolt Imre Lajos Andr\xe1s Gy\xf6rgy Csaba Gyula Mih\xe1ly K\xe1roly B\xe9la Bal\xe1zs Mikl\xf3s R\xf3bert P\xe1l Kriszti\xe1n D\xe1vid Norbert D\xe1niel \xc1d\xe1m Antal Szabolcs Bence G\xe9za Roland M\xe1t\xe9 Rich\xe1rd Gergely \xc1rp\xe1d Gerg\x{151} B\xe1lint Viktor M\xe1rk \xc1kos Jen\x{151} K\xe1lm\xe1n M\xe1rton Ern\x{151} Levente Dezs\x{151} Endre M\xe1ty\xe1s Krist\xf3f Patrik Barnab\xe1s Martin N\xe1ndor Vilmos Ott\xf3 Szil\xe1rd D\xe9nes Bertalan Mil\xe1n Marcell Erik Dominik Rudolf Alex Korn\xe9l Albert \xc1ron Oliv\xe9r Gy\x{151}z\x{151} Zsigmond Guszt\xe1v Ervin Vince Elem\xe9r Adri\xe1n Benj\xe1min Andor Szilveszter Iv\xe1n Benedek Botond Tivadar Zsombor Emil Barna Henrik Arnold Elek Rezs\x{151} Kevin L\xf3r\xe1nt Ign\xe1c M\xe1ri\xf3 Alad\xe1r Frigyes "; our @frequentn = split " ", " M\xe1ria Erzs\xe9bet Ilona Katalin \xc9va Anna Margit Zsuzsanna Julianna Judit \xc1gnes Ir\xe9n Andrea Ildik\xf3 Erika Krisztina Magdolna Eszter Edit Roz\xe1lia M\xf3nika Gabriella Szilvia Piroska M\xe1rta Anita Anik\xf3 Kl\xe1ra Gizella Ibolya T\xedmea Vikt\xf3ria Ter\xe9zia T\xfcnde Veronika Jol\xe1n Zs\xf3fia Csilla D\xf3ra Alexandra Etelka Marianna Melinda Be\xe1ta Ter\xe9z Nikolett Adrienn Ren\xe1ta Rita Gy\xf6ngyi Borb\xe1la Bernadett Brigitta Hajnalka Edina Val\xe9ria Barbara Enik\x{151} Orsolya R\xf3za R\xe9ka N\xf3ra Aranka Vivien Annam\xe1ria Nikoletta Irma Petra No\xe9mi R\xf3zsa Kitti Anett Emese Klaudia Beatrix Fanni Bogl\xe1rka Zita Zsanett Kinga Gy\xf6rgyi Lilla Olga Sarolta J\xfalia Ida Mariann Henrietta Laura Emma Di\xe1na S\xe1ra Bettina Szabina Ang\xe9la Dorottya Evelin L\xedvia Bianka Dorina "; sub randname { my $r = $frequentv[rand@frequentv]; my $u = rand() < 0.5 ? \@frequentf : \@frequentn; my $i = rand@$u; $r .= " " . $$u[$i]; if (rand() < 0.15) { my $j = rand@$u; if ($i != $j) { $r .= " " . $$u[$j]; } } $r; } #binmode STDOUT, "encoding(iso-8859-2)"; binmode STDOUT, "encoding(utf-8)"; for my $c (1 .. ($ARGV[0] // 1)) { print randname(), "\n"; } __END__
Update: I forgot to fold the list @frequentn to as narrow as the others. Fixed now.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Random personal names
by choroba (Cardinal) on Jul 26, 2013 at 13:48 UTC | |
|
Re: Random personal names
by ambrus (Abbot) on Aug 13, 2013 at 23:14 UTC | |
|
Re: Random personal names
by ambrus (Abbot) on Apr 10, 2011 at 10:52 UTC | |
by GrandFather (Saint) on Apr 10, 2011 at 11:54 UTC | |
by Tux (Canon) on Apr 11, 2011 at 06:14 UTC | |
by zwon (Abbot) on Apr 10, 2011 at 14:17 UTC | |
by CountZero (Bishop) on Apr 10, 2011 at 22:49 UTC |