yq/pkg/yqlib/doc/String Operators.md

1.2 KiB

String Operators

Join strings

Given a sample.yml file of:

- cat
- meow
- 1
- null
- true

then

yq eval 'join("; ")' sample.yml

will output

cat; meow; 1; ; true

Substitute / Replace string

This uses golang regex, described here Note the use of |= to run in context of the current string value.

Given a sample.yml file of:

a: dogs are great

then

yq eval '.a |= sub("dogs", "cats")' sample.yml

will output

a: cats are great

Substitute / Replace string with regex

This uses golang regex, described here Note the use of |= to run in context of the current string value.

Given a sample.yml file of:

a: cat
b: heat

then

yq eval '.[] |= sub("(a)", "${1}r")' sample.yml

will output

a: cart
b: heart

Split strings

Given a sample.yml file of:

cat; meow; 1; ; true

then

yq eval 'split("; ")' sample.yml

will output

- cat
- meow
- "1"
- ""
- "true"

Split strings one match

Given a sample.yml file of:

word

then

yq eval 'split("; ")' sample.yml

will output

- word