Удалить неанглийские символы из строки NSString (Obj-C) - PullRequest
1 голос
/ 23 сентября 2011

У меня есть NSString как

Комплекс Аавкар, напротив Гурукула, Драйв-ин-роуд, Ахмедабад, ª «à «° ªª¾àª¤, Индия

, поэтому я хочуучитывайте только английские символы и без английских символов сверху строка, поэтому, пожалуйста, дайте мне любую идею.

Заранее спасибо.

Ответы [ 3 ]

4 голосов
/ 23 сентября 2011

Вот маленький грязный пример:

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!"
1 голос
/ 23 сентября 2011

попробуйте это: -

NSString *emailRegEx = @"[A-Za-z]";
    NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegEx];
    //Valid email address
    NSString *textString=@"gagdaksdhaksdhaskdhasldhasldalasàªà«àªàª°àª¾àª¤dhwheqweuqweuqwe";
    NSString *textFinalString=@"";
    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 голосов
/ 23 сентября 2011

Здесь - это некоторый пример кода, использующий NSRange для этого для текстового поля, хотя код должен легко адаптироваться для использования с массивом NSString.Надеюсь, что поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...