# StringMap

Iterates over all elements in a string and returns a new mapped string

## Method Signature

```
StringMap(list=[string], callback=[function:Function], delimiter=[string], includeEmptyFields=[boolean], multiCharacterDelimiter=[boolean], parallel=[boolean], maxThreads=[any], virtual=[boolean])
```

### Arguments

| Argument                  | Type                | Required | Description                                                 | Default |
| ------------------------- | ------------------- | -------- | ----------------------------------------------------------- | ------- |
| `list`                    | `string`            | `true`   |                                                             |         |
| `callback`                | `function:Function` | `true`   | The callback which returns a boolean and filters the string |         |
| `delimiter`               | `string`            | `false`  |                                                             | `,`     |
| `includeEmptyFields`      | `boolean`           | `false`  |                                                             | `false` |
| `multiCharacterDelimiter` | `boolean`           | `false`  |                                                             | `false` |
| `parallel`                | `boolean`           | `false`  |                                                             | `false` |
| `maxThreads`              | `any`               | `false`  |                                                             |         |
| `virtual`                 | `boolean`           | `false`  |                                                             | `false` |

## Examples

### Full function

Map each element of the string to a new value.

[Run Example](https://try.boxlang.io/?code=eJw1jTEKAjEQRWtzis9WE7S3CCt4ALHwBNk4rgMhhskEEfHuq6jtezxeZjPWhhFDnNKZL%2FMQXMq31pXfkLAvD0ip8Bh3eLqVsnUtSNeohNiSCP38Glv44F7B3VWMj91qN8LJVMp8iJWQv7MN%2FgP%2FCRae5Skm)

```java
letters = "abcdefg";
closure = ( Any inp ) => {
	return char( ascii( inp ) + 7 );
};
writeOutput( StringMap( letters, closure ) );

```

Result: hijklmn

### Member function

Map each element of the string to a new value.

```java
letters = "abcdefg";
closure = ( Any inp ) => {
	return char( ascii( inp ) + 7 );
};
writeOutput( letters.map( closure ) );

```

Result: hijklmn

### Additional Examples

[Run Example](https://try.boxlang.io/?code=eJzLrQwuKcrMS1ewVVDySM3JyVcIzy%2FKSVGy5krOyS8uLUoFSmgoOOZVKpQl5ihoKtjaKVRzcRallpQW5SlogMTUFJQSlTStuWqtucqLMktSXUpzCzQUIKb6JgKZuVArdBRgRmoqANUDADxKJig%3D)

```java
myString = "Hello World";
closure = ( Any val ) => {
	return (val & "a");
};
writeDump( StringMap( myString, closure ) );

```

## Related

* [Ascii](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/ascii)
* [CamelCase](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/camelcase)
* [Char](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/char)
* [CharsetDecode](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/charsetdecode)
* [CharsetEncode](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/charsetencode)
* [Compare](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/compare)
* [CompareNoCase](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/comparenocase)
* [Find](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/find)
* [FindNoCase](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/findnocase)
* [FindOneOf](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/findoneof)
* [Insert](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/insert)
* [JSStringFormat](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/jsstringformat)
* [Justify](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/justify)
* [KebabCase](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/kebabcase)
* [LCase](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/lcase)
* [Left](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/left)
* [ListReduce](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/listreduce)
* [LJustify](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/ljustify)
* [LTrim](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/ltrim)
* [Mid](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/mid)
* [ParagraphFormat](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/paragraphformat)
* [PascalCase](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/pascalcase)
* [QueryStringToStruct](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/querystringtostruct)
* [ReEscape](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/reescape)
* [ReFind](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/refind)
* [reFindNoCase](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/refindnocase)
* [ReMatch](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/rematch)
* [reMatchNoCase](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/rematchnocase)
* [RemoveChars](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/removechars)
* [RepeatString](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/repeatstring)
* [Replace](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/replace)
* [ReplaceList](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/replacelist)
* [ReplaceListNoCase](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/replacelistnocase)
* [ReplaceNoCase](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/replacenocase)
* [ReReplace](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/rereplace)
* [reReplaceNoCase](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/rereplacenocase)
* [Reverse](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/reverse)
* [Right](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/right)
* [RJustify](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/rjustify)
* [RTrim](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/rtrim)
* [Slugify](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/slugify)
* [SnakeCase](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/snakecase)
* [SpanExcluding](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/spanexcluding)
* [SpanIncluding](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/spanincluding)
* [SQLPrettify](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/sqlprettify)
* [StringBind](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/stringbind)
* [StringEach](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/stringeach)
* [StringEvery](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/stringevery)
* [StringFilter](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/stringfilter)
* [StringReduce](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/stringreduce)
* [StringReduceRight](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/stringreduceright)
* [StringSome](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/stringsome)
* [StringSort](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/stringsort)
* [StripCR](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/stripcr)
* [Trim](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/trim)
* [TrueFalseFormat](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/truefalseformat)
* [UCase](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/ucase)
* [UCFirst](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/ucfirst)
* [Val](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/val)
* [Wrap](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/wrap)
* [YesNoFormat](https://boxlang.ortusbooks.com/boxlang-language/reference/built-in-functions/string/yesnoformat)
