objective-c - 将 NSString 分离到 NSArray 中,但允许引号对单词进行分组

标签 objective-c cocoa nsstring

我有一个搜索字符串,人们可以在其中使用引号将短语组合在一起,并将其与各个关键字混合。例如,像这样的字符串:

"Something amazing" rooster

我想将其分离到一个 NSArray 中,这样它将 Something amazing(不带引号)作为一个元素,将 rooster 作为另一个元素。

componentsSeparatedByStringcomponentsSeparatedByCharactersInSet 似乎都不符合要求。有没有一种简单的方法可以做到这一点,还是我应该自己编写代码?

最佳答案

您可能需要自己编写一些代码,但 NSScanner 应该是构建的良好基础。如果您使用 scanUpToCharactersInSet 方法来查找直到您的下一个空格或引号字符的所有内容,以便可以挑选单词。一旦遇到完全字符,您可以仅使用字符集中的引号继续扫描以结束,这样引号内的空格就不会导致标记结束。

关于objective-c - 将 NSString 分离到 NSArray 中,但允许引号对单词进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7193427/

相关文章:

objective-c - 存储可从所有用户帐户访问的应用程序数据的最佳方式是什么?

objective-c - "stringWithString"与 "alloc ... initWithString ... autorelease"

ios - iOS 中的 Google 自动完成 API 集成

objective-c - 调整窗口大小时保持缩放后的 NSScrollView 的内容居中且可见

objective-c - NSBundle 加载一个 NSViewController

ios - 将 nsstring 添加到主包 ios 中的本地 html 文件

ios - 从 NSString 获取 UILabel 所需的行数?

objective-c - 将短 Zulu 格式日期转换为 NSDate

iphone - 委托(delegate)不工作(与 Restkit 相关?)

ios - NSDictionary 中的 NSNumber 始终为 null