# formatTokenize > Tokenize a string into an array of string parts and format identifier objects.
## Usage ```javascript var formatTokenize = require( '@stdlib/string/base/format-tokenize' ); ``` #### formatTokenize( str ) Tokenizes a string into an array of string parts and format identifier objects. ```javascript var str = 'Hello, %s! My name is %s.'; var out = formatTokenize( str ); // returns [ 'Hello, ', {...}, '! My name is ', {...}, '.' ] ``` The format identifier objects have the following properties: | property | description | | --------- | --------------------------------------------------------------------------------------------------- | | specifier | format specifier (one of 's', 'c', 'd', 'i', 'u', 'b', 'o', 'x', 'X', 'e', 'E', 'f', 'F', 'g', 'G') | | flags | format flags (string with any of '0', ' ', '+', '-', '#') | | width | minimum field width (integer or `'*'`) | | precision | precision (integer or `'*'`) | | mapping | positional mapping from format specifier to argument index |
## Examples ```javascript var formatTokenize = require( '@stdlib/string/base/format-tokenize' ); var out = formatTokenize( 'Hello %s!' ); // returns [ 'Hello ', {...}, '!' ] out = formatTokenize( 'Pi: ~%.2f' ); // returns [ 'Pi: ~', {...} ] out = formatTokenize( 'Multiple flags: %#+s' ); // returns [ 'Foo ', {...} ] ```