objective-c string nsstring substring

objective c - Encontrar una subcadena en un objeto NSString



objective-c substring (7)

Tengo un objeto NSString y quiero hacer una subcadena de él, localizando una palabra.

Por ejemplo, mi hilo es: "El perro se comió al gato", quiero que el programa ubique la palabra "comió" y haga una subcadena que será "el gato".

¿Alguien puede ayudarme o darme un ejemplo?

Gracias,

Sagiftw


¿Qué hay de esta manera? Es casi lo mismo. Pero tal vez el significado de NSRange sea más fácil de entender para los principiantes, si está escrito de esta manera.

Por fin, es la misma solución de jtbandes

NSString *szHaystack= @"The dog ate the cat"; NSString *szNeedle= @"ate"; NSRange range = [szHaystack rangeOfString:szNeedle]; NSInteger idx = range.location + range.length; NSString *szResult = [szHaystack substringFromIndex:idx];


Prueba este ...

BOOL isValid=[yourString containsString:@"X"];

Este método devuelve verdadero o falso. Si su cadena contiene este carácter, devuelve verdadero, y de lo contrario devuelve falso.


Puede usar cualquiera de los dos métodos provistos en la clase NSString, como substringToIndex: y substringFromIndex: Pase un NSRange como su longitud y ubicación, y obtendrá el resultado deseado.


-(BOOL)Contains:(NSString *)StrSearchTerm on:(NSString *)StrText { return [StrText rangeOfString:StrSearchTerm options:NSCaseInsensitiveSearch].location==NSNotFound?FALSE:TRUE; }


NSRange range = [string rangeOfString:@"ate"]; NSString *substring = [[string substringFromIndex:NSMaxRange(range)] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];


NSString *str = @"The dog ate the cat"; NSString *search = @"ate"; NSString *sub = [str substringFromIndex:NSMaxRange([str rangeOfString:search])];

Si desea recortar el espacio en blanco, puede hacerlo por separado.


NSString *theNewString = [receivedString substringFromIndex:[receivedString rangeOfString:@"Ur String"].location];

Puede buscar una cadena y luego buscar la cadena buscada en otra cadena ...