Yes, that's the way to do it. Your end marker can be either \r or \n.
Have a read of this discussion:
By reading through the above, you should have an idea of how to do this. Example 5 in post #3 looks to be a good match for your messages.
You will need to modify the recvWithEndMarker() function to use a software serial port created using the modified AltSoftSerial library that @DaveEvans linked to back in post #10.
Have a look at the original page for AltSoftSerial here to see a simple example of how to use it:
https://www.pjrc.com/teensy/td_libs_AltSoftSerial.html
The format of the messages you've shown bear a striking resemblance to the NMEA 0183 messages that i've seen with off the shelf GPS modules. Wikipedia has a page here:
I wonder if one of the tinyGPS libraries could be tweaked to pick up your specific messages and decode them.
This page on tinyGPS++ looks interesting: TinyGPS++ | Arduiniana
Especially the section called Custom NMEA Sentence Extraction. It sounds like it could do all the hard work of parsing those messages for you.