Я предполагаю, что вы скопировали и вставили большую часть своей функции форматирования откуда-то, а не написали ее самостоятельно, потому что она уже содержит код для этого. В первой строке вы говорите:
NSString *pureNumbers = [[textField.text componentsSeparatedByCharactersInSet:[[NSCharacterSet decimalDigitCharacterSet] invertedSet]] componentsJoinedByString:@""];
Это берет строку и удаляет любые нечисловые символы. Так что это уже делает именно то, что вы хотите. Например. если вы скажете
NSString *pureNumbers = [@"$5,000" componentsSeparatedByCharactersInSet:[[NSCharacterSet decimalDigitCharacterSet] invertedSet]] componentsJoinedByString:@""];
Строка pureNumbers теперь равна @ "5000". Чтобы преобразовать это в числовое значение, с которым вы действительно можете выполнять математику, вы можете сказать:
double number = [pureNumbers doubleValue];