The Objective-C library that suggests a right domain when your users misspell it in an email address. See the original at https://github.com/mailcheck/mailcheck.
When your user types in "[email protected]", Mailcheck will suggest "[email protected]".
Mailcheck will offer up suggestions for top level domains too, and suggest ".com" when a user types in "[email protected]".
mailcheck-objectivec is part of the Mailcheck family, and we're always on the lookout for more ports and adaptions. Get in touch!
Copy mailcheck.h and mailcheck.m from the Mailcheck folder to your project.
#import "Mailcheck.h"
NSDictionary *result = [Mailcheck suggest:@"[email protected]"]
Result will contain nil if the domain appears to be valid. Otherwise the suggestion will be a dictionary like this:
{@"address": @"test",
@"domain": @"hotmail.com",
@"full": @"[email protected]"}
Customize the maximum edit distance. For instance with a threshold of 2:
[Mailcheck setThreshold:2]
[Mailcheck check:@"[email protected]"]
will return a suggestion of "[email protected]". With a threshold of 1 no suggestion would be returned for this case. The default value is 3.
Now includes a check if the email is valid thanks to https://github.com/NZN/NSString-Email
#import "Mailcheck.h"
NSDictionary *result = [Mailcheck check:@"[email protected]"]
Result will contain keys for "valid" and "suggestion"
{@"valid": @(YES),
@"suggestion": {@"address": @"test",
@"domain": @"hotmail.com",
@"full": @"[email protected]"}}
Supply your own domain lists:
NSDictionary *result = [Mailcheck check:@"[email protected]" domains:@[@"mydomain.co"] topLevelDomains:@[@"co"]];
Or add to the default list:
NSDictionary *result = [Mailcheck check:@"[email protected]" extraDomains:@[@"mydomain.co"] extraTopLevelDomains:@[@"co"]];
Check the MailcheckDemo or the GHUnit tests in TestMailcheck.m for more usage examples. You can run the tests by loading the demo project and selecting the Tests scheme.
- David Kasper, @dkasper. Author.
Licensed under the MIT License.