Токенизация строки на несколько символов в Objective-C - PullRequest
1 голос
/ 04 декабря 2011

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

Я знаю, что могу использовать:

[строковые компонентыSeparatedByString: @ "-"];

но я хочу проверить наличие пробелов, тире и новых строк.

Как это можно сделать?

Ответы [ 2 ]

4 голосов
/ 04 декабря 2011

использование:

  [string componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString: @"\n\t "]]
1 голос
/ 05 декабря 2011

Как предложил Ахмед, используйте NSCharacterSet для определения символов разделителя, как показано ниже:

NSString *s = @"foo\nbar baz-quux";

NSMutableCharacterSet *characterSet = [NSMutableCharacterSet whitespaceAndNewlineCharacterSet];
[characterSet addCharactersInString:@"-"];

NSArray *strings = [s componentsSeparatedByCharactersInSet:characterSet];
...