All Projects → dblock → objc-ngram

dblock / objc-ngram

Licence: MIT license
Rudimentary ngram search in ObjectiveC.

Programming Languages

objective c
16641 projects - #2 most used programming language
ruby
36898 projects - #4 most used programming language

objc-ngram

Build Status Version Platform

Demo

To run the example project, run pod try objc-ngram.

The demo loads sentences.txt and lets you search for free-formed text in it.

demo

Installation

objc-ngram is available through CocoaPods, to install it add the following line to your Podfile:

pod "objc-ngram"

Usage

Import OCNDictionary.

#import <objc-ngram/OCNDictionary.h>

Create an OCNDictionary and add objects to it with a given key. The key must be a string and is split into 3-grams.

OCNDictionary *dict = [OCNDictionary dictionary];
[dict addObject:@"red brown fox" forKey:@"red brown fox"];
[dict addObject:@"white big bear" forKey:@"white big bear"];
[dict addObject:@"hiding rabbit" forKey:@"hiding"];

NSArray *results = [dict matchObjectsForKey:@"white fox"];
for (OCNObjectScore *result in results) {
  NSLog(@"'%@' has a score of %f", result.object, result.score);
}

This will output the following.

'white big bear' has a score of 1.416667
'red brown fox' has a score of 0.181818

You can create a OCNDictionary with a different n-gram size.

OCNDictionary *dict = [OCNDictionary dictionaryWithNgramWidth:4];

Contributing

See CONTRIBUTING.

License

The objc-ngram library is available under the MIT license. See the LICENSE file for more info.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].