2011-07-12 12 views
13

Estoy usando el siguiente código para reemplazar una parte de la cadena, esto funciona para caracteres normales (caracteres alfabéticos) pero cuando se trata de símbolos como "•" no puede reemplazar el carácter.Objetivo C: ¿Reemplazar parte de la cadena en NSString?

¿Alguna solución?

[myString stringByReplacingOccurrencesOfString:@"•" withString:@"<BULLET_POINT>"]; 

Respuesta

25

Es posible que no pueda insertar literalmente caracteres que no sean ASCII como "•" en un archivo de origen. Intenta usar el escape \u2022 en su lugar.

myString = [myString stringByReplacingOccurrencesOfString:@"\u2022" withString:@"<BULLET_POINT>"]; 
+0

Parece que el método "stringByReplacingOccurrencesOfString" devuelve una nueva cadena con la sustitución y no modifica realmente la corriente de la serie – aryaxt

+2

@aryaxt: eso es correcto, y es porque NSString es un objeto inmutable. Si tiene un NSMutableString puede usar 'replaceOccurrencesOfString: withString: options: range:' en lugar de 'stringByReplacingOccurrencesOfString ...'. – Tommy

Cuestiones relacionadas