in reply to Extract random records from text file
use POSIX qw/floor/; local $/= '==='; my @allquestions = <QUESTIONS>; my @questions; for (1..$maxcount){ my $idx = floor rand @allquestions; push @questions, splice @allquestions, $idx, 1; } return @questions;
Than you'll have to solve your delimiter problem. Dunno what it is, run some checks on that. (We're discussing that in CB right now) And, of course, use strict and warnings.
Jeroen
"We are not alone"(FZ)
Update I added the local thing... too important to miss out... read Why or why not? - local undef $/ and Use strict warnings and diagnostics or die eg.
Update 2 merlyn made me realize (again) that you don't need to floor the stuff:
local $/= '==='; my @allquestions = <QUESTIONS>; my @questions; push @questions, splice @allquestions, rand @allquestions, 1 for (1..$ +maxcount) return @questions;
|
|---|