¿Hay algo similar a una función indexOf
en los objetos NSString?NSString indexOf en Objective-C
Respuesta
Uso -[NSString rangeOfString:]
:
- (NSRange)rangeOfString:(NSString *)aString;
Encuentra y devuelve el rango de la primera ocurrencia de una cadena dada dentro del receptor.
Escribí una categoría para extender el objeto NSString original. Quizás ustedes puedan referenciarlo. (También puede ver el article en mi blog también.)
ExtendNSString.h:
#import <Foundation/Foundation.h>
@interface NSString (util)
- (int) indexOf:(NSString *)text;
@end
ExtendNSStriing.m:
#import "ExtendNSString.h"
@implementation NSString (util)
- (int) indexOf:(NSString *)text {
NSRange range = [self rangeOfString:text];
if (range.length > 0) {
return range.location;
} else {
return -1;
}
}
@end
Un mejor uso de NSRange debe ser el siguiente 'código' - (int) indexOf: (NSString *) texto { Rango NSRange = [self rangeOfString: text]; if (range.location! = NSNotFound) { return range.location; } else { return -1; } } 'código' – loretoparisi
Solución agradable, limpia y reutilizable. Y votó -1 a favor de Apple por hacernos tener que escribir funciones de ayudantes tan descaradamente simples en 2014. ¿Por qué no nos pueden hacer la vida más fácil? –
Si desea que sólo se sabe cuando una cadena contiene Cadena b uso mi manera de hacer esto.
#define contains(str1, str2) ([str1 rangeOfString: str2 ].location != NSNotFound)
//using
NSString a = @"PUC MINAS - BRAZIL";
NSString b = @"BRAZIL";
if(contains(a,b)){
//TO DO HERE
}
Esto es menos legible, pero mejora el rendimiento
Justo lo que necesitaba --- ¡Gracias! –
¡realmente increíble! –
Sé que es tarde, pero añade una categoría que implementa este método y muchos otros similares a javascript métodos de cadena
https://github.com/williamFalcon/WF-iOS-Categories
- 1. Cómo dividir la nueva línea de NSString en ObjectiveC
- 2. Bloques ObjectiveC equivalente en Java
- 3. Javascript indexOf
- 4. ObjectiveC que pasa alrededor ... nula terminado listas de argumentos
- 5. Función IndexOf en T-SQL
- 6. Cómo usar indexOf en KnockoutJS
- 7. objectivec: fb publicar comentario error
- 8. ObjectiveC Parse Integer from String
- 9. jQuery indexOf function?
- 10. ¿Predicado de IndexOf?
- 11. indexOf no funciona
- 12. C# subcadena indexOf
- 13. Collections.binarySearch() vs. Lista indexOf()
- 14. cadena IndexOf y reemplazar
- 15. indexOf para el espacio en la cadena
- 16. Javascript indexOf en una matriz de objetos
- 17. IndexOf no admitido en IE8 Browser
- 18. IndexOf con array de Strings en VB.NET
- 19. mysql get substring offset (indexOf)?
- 20. indexOf sintaxis para matrices multidimensionales?
- 21. ¿Por qué IndexOf devuelve -1?
- 22. ¿Dónde está Java's Array indexOf?
- 23. C# Array.FindAllIndexOf which FindAll IndexOf
- 24. enviar una notificación desde javascript en UIWebView a ObjectiveC
- 25. ¿Cómo implementar un puente sin cargo en ObjectiveC/C?
- 26. obteniendo el error "invalid_client" en la muestra gdata-objectivec-client
- 27. ¿Puedo colocar un ObjectiveC @selector en un NSDictionary?
- 28. Pros y contras del uso de excepción en IOS/ObjectiveC
- 29. indexOf no es una función en Firefox, Opera pero funciona en IE, ¿tiene indexOf alternative en javascript to test string?
- 30. Dividir NSString en Array
y 'NSRange. location' es el índice real. – devios1
'if (NSRange.location! = NSNotFound)' luego has encontrado una coincidencia. –