2009-07-02 24 views

Respuesta

232

Puede utilizar los métodos de instancia NSStringsubstringWithRange: o substringFromIndex:

NSString *str = @"A. rahul VyAs"; 
NSString *newStr = [str substringWithRange:NSMakeRange(3, [str length]-3)]; 

o

NSString *str = @"A. rahul VyAs"; 
NSString *newStr = [str substringFromIndex:3]; 
+2

Respondí casi el carácter por el carácter en el substringFromIndex: parte, así que eliminé y voté votando tu respuesta ya que es más completa – Xetius

+0

Gracias. –

+12

También debe verificar si hay al menos 3 caracteres en la cadena. –

2

Prueba de esto,

char *string=[@"A. rahul VyAs" cStringUsingEncoding:NSUTF8StringEncoding]; 
char *subString=&name[3]; 
NSString *newString=[NSString stringWithCString:subString encoding:NSUTF8StringEncoding]; 
1

Ésta es una solución que he visto específicamente para la eliminación de regularidad ocurriendo prefijos y resolviendo la respuesta er a la pregunta ¿Cómo elimino "A. "?

NSString * name = @"A. rahul VyAs"; 
NSString * prefixToRemove = @"A. "; 
name = [name stringByReplacingOccurrencesOfString:prefixToRemove withString:@""]; 

Este código se eliminará lo que le indica para eliminar/cambiar si existe el juego de caracteres, tales como" A. ", incluso si los tres caracteres (o más/menos) están en el medio de la cadena.

Si desea eliminar rahul, puede hacerlo. Es diverso porque especifica exactamente lo que desea eliminar o cambiar, y si existe en cualquier lugar de la Cadena, se eliminará o cambiará.

Si solo desea que se elimine un número específico de caracteres del texto que siempre son aleatorios o desconocidos, utilice la [longitud de cadena] método como es la respuesta superior.

Si desea eliminar o cambiar ciertos caracteres que aparecen repetidamente r, el método que he usado habilitará eso, similar a Wordsearch en editores de documentos.

+0

Esto solo funcionará si la cadena comienza con "A" y no contiene "A" en ningún otro lado. Por ejemplo, no funcionará para "BlahA. Hola" – Fogmeister

+0

Ok, entonces quiero eliminar los primeros tres caracteres de estas dos cadenas ... "¡Hola, mundo!" Y "Foo Bar". ¿Cómo harás eso con tu solución? – Fogmeister

+0

@Fogmeister, lea la actualización. El punto es si hay un juego de caracteres común o algo específico, ya que la pregunta formulada dice 'A. ', puedes eliminar sin contar. Es solo otra sugerencia, no hay necesidad de frustrarse :-) –

-1

Es así de sencillo:

myString = [myString subStringFromIndex:3] 

Eso es todo.

+5

Eso ya está en la respuesta aceptada ... – brandonscript

Cuestiones relacionadas