After way too much string cleaning I finally found an answer after printing the CFStringRef straight from the Address Book. Here's what's going on behind the scenes...
- Add a contact in iOS7 and Apple stores this: (555).555-5555 (where . is actually U00A0 or  )
- My app copies a contact's info in a CFStringRef from AddressBook (when NSLogged the . shows)
- CFStringRef is cast into NSString (NSLog now shows 555\U00a0555-5555)
To remove the \U00A0 I tried 3 answers from this thread and [NSCharacterSet characterSetWithRange:(160,1)] which didn't work. What finally worked was this line of code:
phoneNumber = [phoneNumber stringByReplacingOccurrencesOfString:@"." withString:@""];
// where @"." was created by typing Option+Spacebar