We don’t have a “equal (with tolerance) to” operator. You have to setup a nodegroup where you output 1 if input is:
greater than input - tolerance AND
less than input + tolerance.
Tolerance can be zero, but I always put it in because sometimes it drifts if the source is compressed (i.e. jpg artefacts).
Since we also don’t have logical operators as such, you have to setup that as well.
Then you have to use the node group on all three HSV (or RGB if you prefer) channels and do AND operators on those as well.
A agree fully, a proper ID node would be waaaay preferred, as sometimes I’m not able to have the topology support the texture divisions I want.