Snippet. Vala. Generate Random StringRandom strings are very useful. For instance, to generate a new password for a user. This convenient Vala function will generate a random string with optional length and optional character set. The default length is 8, and the default character set includes the Latin alphabet in upper case (A-Z) and small case (a-z), and the numbers from 0 to 9.
//======================== START OF FUNCTION ==========================//
// FUNCTION: string_random //
//=====================================================================//
string string_random(int length = 8, string charset = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"){
string random = "";
for(int i=0;i<length;i++){
int random_index = Random.int_range(0,charset.length);
string ch = charset.get_char(charset.index_of_nth_char(random_index)).to_string();
random += ch;
}
return random;
}
//=====================================================================//
// FUNCTION: string_random //
//========================= END OF FUNCTION ===========================//
Example// Default. Upper and smallcase numbers string random_default = string_random(); stdout.printf(random_default + "\n"); // Prints B4KzA6IC // Random string of only small case letters and 10 characters long string random_smallcase = string_random(10,"abcdefghijklmnopqrstuvwxyz"); stdout.printf(random_smallcase + "\n"); // Prints nuwhsugjgp // Random string of only numbers and 12 characters long string random_numbers = string_random(12,"1234567890"); stdout.printf(random_numbers + "\n"); // Prints 064392356885 Updated on: 01 Dec 2025 |
|
|