2011-09-23 65 views
1

我的NSString像從NSString的(對象 - )

Aavkar大樓,對面Gurukul,Dri​​ve-In的路,艾哈邁達巴德, àªà«àªàª°àª¾àª¤,印度

刪除非英語字符

所以我想只考慮英文字符和沒有 英文字符是從上面的字符串,所以請給我任何想法。

在此先感謝。

回答

4

這裏是一個小髒例如:

NSString *test = @"Olé, señor!"; 

NSMutableString *asciiCharacters = [NSMutableString string]; 
for (NSInteger i = 32; i < 127; i++) { 
    [asciiCharacters appendFormat:@"%c", i]; 
} 

NSCharacterSet *nonAsciiCharacterSet = [[NSCharacterSet characterSetWithCharactersInString:asciiCharacters] invertedSet]; 

test = [[test componentsSeparatedByCharactersInSet:nonAsciiCharacterSet] componentsJoinedByString:@""]; 

NSLog(@"%@", test); // Prints @"Ol, seor!" 
+0

感謝你這麼多 –

0

Here是使用NSRange一些示例代碼的一種用於文本框做到這一點,儘管代碼應該是很容易適應使用的NSString陣列的。希望有助於!

1

試試這個: -

NSString *emailRegEx = @"[A-Za-z]"; 
    NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegEx]; 
    //Valid email address 
    NSString *[email protected]"gagdaksdhaksdhaskdhasldhasldalasàªà«àªàª°àª¾àª¤dhwheqweuqweuqwe"; 
    NSString *[email protected]""; 
    for (int i=0; i<[textString length]; i++) { 
     NSString *text2string=[textString substringWithRange:NSMakeRange(i,1)]; 
     NSLog(@"%@",text2string); 
     if ([emailTest evaluateWithObject:text2string] == YES) 
     { 
      NSLog(@"yesenglishCharacter"); 
      textFinalString=[textFinalString stringByAppendingString:text2string]; 

     } 
     else { 
      NSLog(@"noenglishCharacter"); 
     } 


    } 
    NSLog(@"textFinalString%@",textFinalString); 
+0

感謝了很多,但它的回報gagdaksdhaksdhaskdhasldhasldalasªªªªªdhwheqweuqweuqwe所以請幫助我如何刪除 –