yq/pkg/yqlib/doc/operators/divide.md
2023-05-02 15:07:04 +10:00

775 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}