[[gsub-processor]]
=== Gsub processor
++++
<titleabbrev>Gsub</titleabbrev>
++++

Converts a string field by applying a regular expression and a replacement.
If the field is an array of string, all members of the array will be converted. If any non-string values are encountered, the processor will throw an exception. 

[[gsub-options]]
.Gsub Options
[options="header"]
|======
| Name              | Required  | Default  | Description
| `field`           | yes       | -        | The field to apply the replacement to
| `pattern`         | yes       | -        | The pattern to be replaced
| `replacement`     | yes       | -        | The string to replace the matching patterns with
| `target_field`    | no        | `field`  | The field to assign the converted value to, by default `field` is updated in-place
| `ignore_missing`  | no        | `false`  | If `true` and `field` does not exist or is `null`, the processor quietly exits without modifying the document
include::common-options.asciidoc[]
|======

[source,js]
--------------------------------------------------
{
  "gsub": {
    "field": "field1",
    "pattern": "\\.",
    "replacement": "-"
  }
}
--------------------------------------------------
// NOTCONSOLE
