¿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. Cómo usar indexOf en KnockoutJS
- 6. Función IndexOf en T-SQL
- 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. cadena IndexOf y reemplazar
- 14. Collections.binarySearch() vs. Lista indexOf()
- 15. indexOf para el espacio en la cadena
- 16. IndexOf no admitido en IE8 Browser
- 17. IndexOf con array de Strings en VB.NET
- 18. Javascript indexOf en una matriz de objetos
- 19. mysql get substring offset (indexOf)?
- 20. indexOf sintaxis para matrices multidimensionales?
- 21. ¿Por qué IndexOf devuelve -1?
- 22. C# Array.FindAllIndexOf which FindAll IndexOf
- 23. ¿Dónde está Java's Array indexOf?
- 24. ¿Puedo colocar un ObjectiveC @selector en un NSDictionary?
- 25. enviar una notificación desde javascript en UIWebView a ObjectiveC
- 26. Pros y contras del uso de excepción en IOS/ObjectiveC
- 27. ¿Cómo implementar un puente sin cargo en ObjectiveC/C?
- 28. obteniendo el error "invalid_client" en la muestra gdata-objectivec-client
- 29. indexOf no es una función en Firefox, Opera pero funciona en IE, ¿tiene indexOf alternative en javascript to test string?
- 30. Detectar URL en NSString
y 'NSRange. location' es el índice real. – devios1
'if (NSRange.location! = NSNotFound)' luego has encontrado una coincidencia. –