how to get ping result correctly by shell?

I'm writing shell script, and I want to get ping result, so I write code like this:

ping_res=`ping -c 5 $ADMIN_GW -I $SRIOV_BOND | grep loss | awk '{print $6}' | awk -F "%" '{print $1}'`

Most PC got this result: '100', some PC got this result: '+5'. So I run command like this to check why:

ping_res=`ping -c 5 $ADMIN_GW -I $SRIOV_BOND | grep loss`

and I got different result, one is:

5 packets transmitted, 0 received, 100% packet loss, time 4001ms

one is:

5 packets transmitted, 0 received, +5 errors, 100% packet loss, time 4001ms

I don't why, and I want to get '100%', so is there some way to get result correctly. Thank you~

Use grep -o '[0-9]\+%' to isolate that part of the line.