Skip to content

Instantly share code, notes, and snippets.

@eventomer
Created October 23, 2012 10:33
Show Gist options
  • Save eventomer/3938093 to your computer and use it in GitHub Desktop.
Save eventomer/3938093 to your computer and use it in GitHub Desktop.
removeStreetNumber
//removes the last word number in an expression
-(NSString *)removeStreetNumber:(NSString *)string{
string = [string stringByTrimmingCharactersInSet:
[NSCharacterSet whitespaceAndNewlineCharacterSet]];
// /s+:whitspace atleast one time, [0-9]*:as many time of numbers as you wish, $:the end of expression
NSRange range = [string rangeOfString:@"\\s+[0-9]*$" options:NSRegularExpressionSearch];
if (range.length>0) {
return [string stringByReplacingCharactersInRange:range withString:@""];
}
return string;
}
//passed tests
- (void)testExample
{
STAssertEqualObjects([self removeStreetNumber:@"123 456"],@"123", @"");
STAssertEqualObjects([self removeStreetNumber:@" 123 456 "],@"123", @"");
STAssertEqualObjects([self removeStreetNumber:@"123 456"],@"123", @"");
STAssertEqualObjects([self removeStreetNumber:@"a123 456"],@"a123", @"");
STAssertEqualObjects([self removeStreetNumber:@"123 "],@"123", @"");
STAssertEqualObjects([self removeStreetNumber:@" 123 "],@"123", @"");
STAssertEqualObjects([self removeStreetNumber:@"1a23 4a56"],@"1a23 4a56", @"");
STAssertEqualObjects([self removeStreetNumber:@" aaa 4aa56"],@"aaa 4aa56", @"");
STAssertEqualObjects([self removeStreetNumber:@"12a3 456a"],@"12a3 456a", @"");
STAssertEqualObjects([self removeStreetNumber:@" 123 56 "],@"123", @"");
STAssertEqualObjects([self removeStreetNumber:@"123 456"],@"123", @"");
STAssertEqualObjects([self removeStreetNumber:@"12aDF3 4asd56adF"],@"12aDF3 4asd56adF", @"");
STAssertEqualObjects([self removeStreetNumber:@"123 Asd 456"],@"123 Asd", @"");
STAssertEqualObjects([self removeStreetNumber:@"מנחם בגין 84"],@"מנחם בגין", @"");
STAssertEqualObjects([self removeStreetNumber:@"מנחם בגין"],@"מנחם בגין", @"");
STAssertEqualObjects([self removeStreetNumber:@" מנחם בגין"],@"מנחם בגין", @"");
STAssertEqualObjects([self removeStreetNumber:@" מנחם בגין "],@"מנחם בגין", @"");
STAssertEqualObjects([self removeStreetNumber:@" 23 מנחם 23 בגין 23 "],@"23 מנחם 23 בגין", @"");
STAssertEqualObjects([self removeStreetNumber:@"רחוב 160 16"],@"רחוב 160", @"");
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment