randomatic
Generate randomized strings of a specified length using simple character sequences. The original generate-password.
Please consider following this project's author, Jon Schlinkert, and consider starring the project to show your
Install
Install with npm:
$ npm install --save randomatic
Usage
var randomize = require('randomatic');
API
randomize(pattern, length, options);
-
pattern
{String}: (required) The pattern to use for randomizing -
length
{Number}: (optional) The length of the string to generate -
options
{Object}: (optional) See available options
pattern
The pattern to use for randomizing
Patterns can contain any combination of the below characters, specified in any order.
Example:
To generate a 10-character randomized string using all available characters:
randomize('*', 10);
//=> 'x2_^-5_T[$'
randomize('Aa0!', 10);
//=> 'LV3u~BSGhw'
-
a
: Lowercase alpha characters (abcdefghijklmnopqrstuvwxyz'
) -
A
: Uppercase alpha characters (ABCDEFGHIJKLMNOPQRSTUVWXYZ'
) -
0
: Numeric characters (0123456789'
) -
!
: Special characters (~!@#$%^&()_+-={}[];\',.
) -
*
: All characters (all of the above combined) -
?
: Custom characters (pass a string of custom characters to the options)
length
the length of the string to generate
Examples:
-
randomize('A', 5)
will generate a 5-character, uppercase, alphabetical, randomized string, e.g.KDJWJ
. -
randomize('0', 2)
will generate a 2-digit random number -
randomize('0', 3)
will generate a 3-digit random number -
randomize('0', 12)
will generate a 12-digit random number -
randomize('A0', 16)
will generate a 16-character, alpha-numeric randomized string
If length
is left undefined, the length of the pattern in the first parameter will be used. For example:
-
randomize('00')
will generate a 2-digit random number -
randomize('000')
will generate a 3-digit random number -
randomize('0000')
will generate a 4-digit random number... -
randomize('AAAAA')
will generate a 5-character, uppercase alphabetical random string...
These are just examples, see the tests for more use cases and examples.
chars
Type: String
Default: undefined
Define a custom string to be randomized.
Example:
-
randomize('?', 20, {chars: 'jonschlinkert'})
will generate a 20-character randomized string from the letters contained injonschlinkert
. -
randomize('?', {chars: 'jonschlinkert'})
will generate a 13-character randomized string from the letters contained injonschlinkert
.
Usage Examples
-
randomize('A', 4)
(whitespace insenstive) would result in randomized 4-digit uppercase letters, like,ZAKH
,UJSL
... etc. -
randomize('AAAA')
is equivelant torandomize('A', 4)
-
randomize('AAA0')
andrandomize('AA00')
andrandomize('A0A0')
are equivelant torandomize('A0', 4)
-
randomize('aa')
: results in double-digit, randomized, lower-case letters (abcdefghijklmnopqrstuvwxyz
) -
randomize('AAA')
: results in triple-digit, randomized, upper-case letters (ABCDEFGHIJKLMNOPQRSTUVWXYZ
) -
randomize('0', 6)
: results in six-digit, randomized numbers (0123456789
) -
randomize('!', 5)
: results in single-digit randomized, valid non-letter characters (`~!@#$%&()_+-={}[] -
randomize('A!a0', 9)
: results in nine-digit, randomized characters (any of the above)
The order in which the characters are defined is insignificant.
About
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).Running Tests
Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: ```sh $ npm install && npm test ```Building docs
_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ To generate the readme, run the following command: ```sh $ npm install -g verbose/verb#dev verb-generate-readme && verb ```Related projects
You might also be interested in these projects:
- pad-left: Left pad a string with zeros or a specified string. Fastest implementation. | homepage
- pad-right: Right pad a string with zeros or a specified string. Fastest implementation. | homepage
- repeat-string: Repeat the given string n times. Fastest implementation for repeating a string. | homepage
Contributors
Commits | Contributor |
---|---|
48 | jonschlinkert |
2 | realityking |
1 | TrySound |
1 | Drag0s |
1 | paulmillr |
1 | sunknudsen |
1 | faizulhaque-tp |
Author
Jon Schlinkert
License
Copyright
This file was generated by verb-generate-readme, v0.6.0, on October 19, 2017.