У меня есть Perl-скрипт, который дает мне 50-символьную строку случайных чисел, букв и некоторых специальных символов.Я ввожу их в базу данных.Теперь, учитывая длину строки и количество символов, я не думаю, что дубликаты будут легко созданы.
Вот изящный слепок кода, который создает строку:
my $random_id='';
my @c = ( "A" .. "Z", "a" .. "z", 0 .. 9, qw(! @ $ % ^ & *) );
$random_id = join '', map $c[rand @c] , 1 .. 50;
Он генерирует строки вроде:
C1Qt8L7E7QUD% lkxnh9yjZ2njF0iMj! 1o ^ 4DmTbVNhQB9% dke @
Проблема заключается в том, что она будет дублировать точную строку каждый раз и в то же времяуникальные, и не раз на некоторых строках.И это, скажем, 20 строк.Это странно.Я могу обойти это и найти решение ... но это немного озадачивает меня.Хотелось бы знать почему.У кого-нибудь есть идея?