yq/operators/divide.md
2023-03-18 14:54:23 +11:00

761 B

Divide

Divide behaves differently according to the type of the LHS:

  • strings: split by the divider
  • number: arithmetic division

String split

Given a sample.yml file of:

a: cat_meow
b: _

then

yq '.c = .a / .b' sample.yml

will output

a: cat_meow
b: _
c:
  - cat
  - meow

Number division

The result during division is calculated as a float

Given a sample.yml file of:

a: 12
b: 2.5

then

yq '.a = .a / .b' sample.yml

will output

a: 4.8
b: 2.5

Number division by zero

Dividing by zero results in +Inf or -Inf

Given a sample.yml file of:

a: 1
b: -1

then

yq '.a = .a / 0 | .b = .b / 0' sample.yml

will output

a: !!float +Inf
b: !!float -Inf