Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

A Elixir module to generate a random string based on a given string pattern.

License

NotificationsYou must be signed in to change notification settings

caioceccon/random_string_generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Statuscodecov

A module to generate a random string based on a given string pattern

Installation

The package can be installed by addingrandom_string_generator to your list of dependencies inmix.exs:

defdepsdo[{:random_string_generator,"~> 1.0.0"}]end

Usage

Accepted string patterns:

Usel for lower case letter from a to z

UseL for upper case letter from A to Z

Used for digit from 0 to 9

Usep for punctuation

Usec for custom character

Punctuation is any character on the following group:

!,",#,$,%,&,',(,),*,+,,,-,.,/,:,;,<,=,>,?,@,[,\,],^,_,{,|,},~ and`

Generate a string containing 2 lower case letters followed by 2 digits.
iex>RandomStringGenerator.generate("lldd")"ol68"
Generate a string containing 2 upper case letters.
iex>RandomStringGenerator.generate("LL")"VR"
Generate a string containing 2 punctuations.
iex>RandomStringGenerator.generate("pp")"?!"

Delimiters

Everything that is notl,L,d,p andc is treated as a delimiter sothe pattern-dl? is interpreted as a hyphen followed by a digit followed bya lower case letter followed by a question mark.

Generate a string containing 2 letters followed by a hyphen.
iex>RandomStringGenerator.generate("ll-")"yz-"

Scape

In order to generate a string containing the charactersl,L,d andpas a delimiter, you need to use the backslash twice in order to scape it.

Generate a string containing 2 digits followed by the letterslLdp.
iex>RandomStringGenerator.generate("dd\\l\\L\\d\\p")"39lLdp"

Custom Chars

I order to generate a string based on a given custom patternccc a listof possible values need to be passed as an argument.

Generate a string containing 3 custom chars from the list["+", "-", "/", "*"].
iex>RandomStringGenerator.generate("ccc",["+","-","/","*"])"+/*"

If no custom char list is passed the with characterc it will be treatedas adelimiter as in the example below where it generates a string containingone digit followed by the letter c followed by another digit

iex>RandomStringGenerator.generate("dcd")"2c1"

Shuffling

In order to generate a string based on a given patterLldd where thosecharacters are placed in a random order, theshuffle/1 function shouldbe used.

Generate a string containing 2 lower case letters, 2 digits in random order.
iex>RandomStringGenerator.generate("Lldd")|>RandomStringGenerator.shuffle()"s22E"

Full documentation athttps://hexdocs.pm/random_string_generator.

About

A Elixir module to generate a random string based on a given string pattern.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp