# Left Pad > Left pad a string.
## Usage ```javascript var lpad = require( '@stdlib/string/left-pad' ); ``` #### lpad( str, len\[, pad] ) Left pads a `string` such that the padded `string` has a `length` of **at least** `len`. ```javascript var str = lpad( 'a', 5 ); // returns ' a' ``` By default, an input `string` is padded with `spaces`. To pad with a different character or sequence of characters, provide a `pad` string. ```javascript var str = lpad( 'beep', 10, 'b' ); // returns 'bbbbbbbeep' str = lpad( 'boop', 12, 'beep' ); // returns 'beepbeepboop' ```
## Notes - An output `string` is **not** guaranteed to have a length of **exactly** `len`, but to have a `length` of **at least** `len`. To generate a padded `string` having a `length` equal to `len` ```javascript var str = lpad( 'boop', 10, 'beep' ); // => length 12 // returns 'beepbeepboop' str = str.substring( str.length-10 ); // => length 10 // returns 'epbeepboop' ```
## Examples ```javascript var round = require( '@stdlib/math/base/special/round' ); var randu = require( '@stdlib/random/base/randu' ); var lpad = require( '@stdlib/string/left-pad' ); var str = 'beep'; var n; var i; for ( i = 0; i < 100; i++ ) { n = round( randu()*10 ) + str.length; console.log( lpad( str, n, 'b' ) ); } ```
* * *
## CLI
### Usage ```text Usage: lpad [options] [] --len= Options: -h, --help Print this message. -V, --version Print the package version. --len length Minimum string length. --pad str String used to pad. Default: ' '. --split sep Delimiter for stdin data. Default: '/\\r?\\n/'. ```
### Notes - If the split separator is a [regular expression][mdn-regexp], ensure that the `split` option is either properly escaped or enclosed in quotes. ```bash # Not escaped... $ echo -n $'beep\nboop' | lpad -len 8 --split /\r?\n/ # Escaped... $ echo -n $'beep\nboop' | lpad -len 8 --split /\\r?\\n/ ``` - The implementation ignores trailing delimiters.
### Examples ```bash $ lpad beep --len 10 --pad b bbbbbbbeep ``` To use as a [standard stream][standard-streams], ```bash $ echo -n 'beep' | lpad --len 8 beep ``` By default, when used as a [standard stream][standard-streams], the implementation assumes newline-delimited data. To specify an alternative delimiter, set the `split` option. ```bash $ echo -n 'boop\tbeep' | lpad --len 8 --split '\t' boop beep ```