2011-06-04 13 views
8

Tengo una larga cadena de caracteres. Quiero reemplazar algunos caracteres con otros caracteres.Cómo reemplazar una cadena que no distingue entre mayúsculas y minúsculas en el objetivo-c iphone?

Por ejemplo

string1="Hello WORLD12"; 
string2="world"; 

string1= search string2 in string1 and replace it; 
//need this method in objective c 

string1="Hello world12"; 
+0

No es una pregunta clara, explique su problema. – DreamOfMirrors

+0

Parece que quiere reemplazar solo la parte de string1 que está en mayúsculas. No toda la cadena. –

Respuesta

-2

Uso NSRange para agarrar la cadena de sustitución y luego usar stringByReplacingOccurrencesOfString función para reemplazar los caracteres en la cadena.

NSString *string1 = "Hello WORLD12"; 
NSString *string2 = "world"; 
NSRange *range = [string1 rangeOfString:string2]; 
if (range.length > 0){ 
    NSString *newString = [string1 substringFromIndex:range.location+6]; 
    [string1 stringByReplacingOccurrencesOfString:newString withString:string2]; 
} 
1

Usted puede llamar al método NSString stringByReplacingOccurrencesOfString:withString:

NSString *string1 = "Hello WORLD12"; 
NSString *string2 = "world"; 

NSString *string3 = [string1 stringByReplacingOccurrencesOfString:@"WORLD" withString:string2]; 
47

Si por mayúsculas y minúsculas que quiere decir la sustitución minúsculas, Ken Pespisa tiene su respuesta, pero si no se distingan está a punto su cadena de búsqueda puede hacer esto:

[mystring stringByReplacingOccurrencesOfString:@"searchString" withString:@"replaceString" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [mystring length])]; 

para obtener más información consulte la documentación de:

- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target withString:(NSString *)replacement options:(NSStringCompareOptions)options range:(NSRange)searchRange; 
Cuestiones relacionadas