Split processor
Splits a field into an array using a separator character. Only works on string fields.
| Name | Required | Default | Description |
|---|---|---|---|
field | yes | - | The field to split |
separator | yes | - | A regex which matches the separator, eg, or\s+ |
target_field | no | field | The field to assign the split value to, by defaultfield is updated in-place |
ignore_missing | no | false | Iftrue andfield does not exist, the processor quietly exits without modifying the document |
preserve_trailing | no | false | Preserves empty trailing fields, if any. |
description | no | - | Description of the processor. Useful for describing the purpose of the processor or its configuration. |
if | no | - | Conditionally execute the processor. SeeConditionally run a processor. |
ignore_failure | no | false | Ignore failures for the processor. SeeHandling pipeline failures. |
on_failure | no | - | Handle failures for the processor. SeeHandling pipeline failures. |
tag | no | - | Identifier for the processor. Useful for debugging and metrics. |
{ "split": { "field": "my_field", "separator": "\\s+" }}- Treat all consecutive whitespace characters as a single separator
If thepreserve_trailing option is enabled, any trailing empty fields in the input will be preserved. For example, in the configuration below, a value ofA,,B,, in themy_field property will be split into an array of five elements["A", "", "B", "", ""] with two empty trailing fields. If thepreserve_trailing property were not enabled, the two empty trailing fields would be discarded resulting in the three-element array["A", "", "B"].
{ "split": { "field": "my_field", "separator": ",", "preserve_trailing": true }}