formatInterpolate

Generate string from a token array by interpolating values.

Usage

var formatInterpolate = require( '@stdlib/string/base/format-interpolate' );

formatInterpolate( tokens, ...args )

Generates string from a token array by interpolating values.

var formatTokenize = require( '@stdlib/string/base/format-tokenize' );

var str = 'Hello, %s! My name is %s.';
var tokens = formatTokenize( str );
var out = formatInterpolate( tokens, 'World', 'Bob' );
// returns 'Hello, World! My name is Bob.'

The array of tokens should contain string parts and format identifier objects.

var tokens = [ 'beep ', { 'specifier': 's' } ];
var out = formatInterpolate( tokens, 'boop' );
// returns 'beep boop'

Format identifier objects can have the following properties:

propertydescription
specifierformat specifier (one of 's', 'c', 'd', 'i', 'u', 'b', 'o', 'x', 'X', 'e', 'E', 'f', 'F', 'g', 'G')
flagsformat flags (string with any of '0', ' ', '+', '-', '#')
widthminimum field width (integer or '*')
precisionprecision (integer or '*')
mappingpositional mapping from format specifier to argument index

Examples

var formatTokenize = require( '@stdlib/string/base/format-tokenize' );
var PI = require( '@stdlib/constants/float64/pi' );
var formatInterpolate = require( '@stdlib/string/base/format-interpolate' );

var tokens = formatTokenize( 'Hello %s!' );
var out = formatInterpolate( tokens, 'World' );
// returns 'Hello World!'

tokens = formatTokenize( 'Pi: ~%.2f' );
out = formatInterpolate( tokens, PI );
// returns 'Pi: ~3.14'

tokens = formatTokenize( 'Index: %d, Value: %s' );
out = formatInterpolate( tokens, 0, 'foo' );
// returns 'Index: 0, Value: foo'
Did you find this page helpful?