fill-range
Fill in a range of numbers or letters, optionally passing an increment or multiplier to use.
Install with npm
npm i fill-range --save
Usage
var range = require('fill-range');
Params
range(start, stop, increment);
start
: the number or letter to start withend
: the number or letter to end withstep
: optionally pass the increment to use. works for letters or numbers
Examples
range(1, 3)
range('1', '3')
range('0', '-5')
range(-9, 9, 3)
range('-1', '-10', '-2')
range('1', '10', '2')
range('a', 'e')
range('a', 'e', 2)
range('A', 'E', 2)
Custom function
Optionally pass a custom function as the third or fourth argument:
range('a', 'e', function (val, isNumber, pad, i) {
if (!isNumber) {
return String.fromCharCode(val) + i;
}
return val;
});
Special characters
A special character may be passed as the third arg instead of a step increment. These characters can be pretty useful for brace expansion, creating file paths, test fixtures and similar use case.
range('a', 'z', SPECIAL_CHARACTER_HERE);
Supported characters
+
: repeat the given string n
times|
: create a regex-ready string, instead of an array>
: collapse/join values to single array element?
: randomize the given pattern using randomatic
+
Repeat the first argument the number of times passed on the second argument.
Examples:
range('a', 3, '+');
range('abc', 2, '+');
|
Creates a regex-ready string from the expanded arguments.
Examples:
range('a', 'c', '|');
range('a', 'z', '|5');
>
Collapses all values in the returned array to a single value.
Examples:
range('a', 'e', '>');
range('5', '8', '>');
range('2', '20', '2>');
?
Uses randomatic to generate randomized alpha, numeric, or alpha-numeric patterns based on the provided arguments.
Examples:
(actual results would obviously be randomized)
Generate a 5-character, uppercase, alphabetical string:
range('A', 5, '?');
Generate a 5-digit random number:
range('0', 5, '?');
Generate a 10-character alpha-numeric string:
range('A0', 10, '?');
See the randomatic repo for all available options and or to create issues or feature requests related to randomization.
Run tests
Install dev dependencies:
npm i -d && npm test
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue
Author
Jon Schlinkert
License
Copyright (c) 2014-2015 Jon Schlinkert
Released under the MIT license
This file was generated by verb on January 24, 2015.