The way you deal with multi value mqtt strings AFAIK is to break the message up into separate messages in both nodered and HA. Here you can find 2 examples by Taras, to break the message and republish each key value pair to it’s own topic.
@Hellis81 's json node does a much better job of making the string manageable. I would still split the massage, because that is how I know how to do it. This example will show you how to use a value to trigger actions or how to create an entity in HA.
In order to create entities in HA you need the nodered companion from HACS.
[{"id":"63c813fa319b6332","type":"inject","z":"f80b6c338afd5483","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"{\"battery\":100,\"humidity\":56.09,\"linkquality\":111,\"pressure\":1040,\"temperature\":21.35,\"voltage\":3065}","payloadType":"str","x":350,"y":260,"wires":[["8bb613f20e14c230"]]},{"id":"8bb613f20e14c230","type":"json","z":"f80b6c338afd5483","name":"","property":"payload","action":"","pretty":false,"x":510,"y":260,"wires":[["5ba2b35839d3cbe1"]]},{"id":"e99f93666987b36b","type":"switch","z":"f80b6c338afd5483","name":"","property":"parts.key","propertyType":"msg","rules":[{"t":"eq","v":"battery","vt":"str"},{"t":"eq","v":"humidity","vt":"str"},{"t":"eq","v":"linkquality","vt":"str"},{"t":"eq","v":"pressure","vt":"str"},{"t":"eq","v":"temperature","vt":"str"},{"t":"eq","v":"voltage","vt":"str"}],"checkall":"true","repair":false,"outputs":6,"x":810,"y":260,"wires":[[],["459e775b6f7647df"],[],["c6f847bb2248cffd"],[],[]]},{"id":"5ba2b35839d3cbe1","type":"split","z":"f80b6c338afd5483","name":"","splt":"\\n","spltType":"str","arraySplt":"2","arraySpltType":"len","stream":false,"addname":"","x":670,"y":260,"wires":[["e99f93666987b36b"]]},{"id":"c6f847bb2248cffd","type":"ha-entity","z":"f80b6c338afd5483","name":"pressure","server":"","version":1,"debugenabled":false,"outputs":1,"entityType":"sensor","config":[{"property":"name","value":""},{"property":"device_class","value":""},{"property":"icon","value":""},{"property":"unit_of_measurement","value":""}],"state":"payload","stateType":"msg","attributes":[],"resend":true,"outputLocation":"payload","outputLocationType":"none","inputOverride":"allow","outputOnStateChange":false,"outputPayload":"$entity().state ? \"on\": \"off\"","outputPayloadType":"jsonata","x":1020,"y":300,"wires":[[]]},{"id":"459e775b6f7647df","type":"switch","z":"f80b6c338afd5483","name":"Is humidity above 50","property":"payload","propertyType":"msg","rules":[{"t":"gte","v":"50","vt":"num"},{"t":"lt","v":"50","vt":"num"}],"checkall":"true","repair":false,"outputs":2,"x":1060,"y":240,"wires":[["9b789c9da4bbef49"],["134d0e7b3a5b8412"]]},{"id":"9b789c9da4bbef49","type":"api-call-service","z":"f80b6c338afd5483","name":"turn something on","server":"","version":3,"debugenabled":false,"service_domain":"","service":"","entityId":"","data":"","dataType":"jsonata","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1370,"y":220,"wires":[[]]},{"id":"134d0e7b3a5b8412","type":"api-call-service","z":"f80b6c338afd5483","name":"turn something off","server":"","version":3,"debugenabled":false,"service_domain":"","service":"","entityId":"","data":"","dataType":"jsonata","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1370,"y":260,"wires":[[]]}]