![]() |
[Perl] Рандомный выбор строки из текста
Не совсем пойму как рандомно взять строку из файла..
Есть текстовый файл text.txt с текстом: слово1 слово2 слово3 слово4 ... словоN Как отсюда взять одно случайное слово? |
Открываем файл
Определяем общее количество строк Полученную цифру кидаем в рандом Получаем случайное число не большее чем общее количество строк Читаем строку из файла, под номером полученным рандомом Или тебе нужно уже готовое решение? ;) |
open (FILE, '<text.txt');
chomp (@text = <FILE>); close FILE; $rand_text = $text[int(rand scalar @text)]; print $rand_text."\n"; |
Цитата:
Но не знаю как прочитать определенную по номеру строку из файла. TheSoul, спасибо большое) Это, наверное, самое верный вариант) |
Зачем всё подгружать в память?
В кукбуке есть очень красивый пример, как решается твоя проблема. туц Код:
$rand_text = $text[int(rand scalar @text)];Код:
$rand_text = $text[rand scalar @text]; |
| Время: 13:32 |