GPS + GSM Serial

Would it be better for me to do nested if statements reading each character at a time? For example:

c = cell.read()
 if (c == '+')
 {
   c = cell.read()
   if (c == 'G')
   {
     c = cell.read()
     if (c == 'M') 
     {
       //Assume that the phrase "+GM" was received
     }
   }
 }

I have seen that method used, and to me it just seems messy. I don't know.

Ideally I just want to receive an sms, poll the gps for its current data, return the data to the senders number. The gps doesn't have to be polled continously the only reason I had it like that was because I thought that with NSS I could have 2 serial ports running seperately but not "nested" if that makes sense.

Thanks