假设我有一个字符串“167282”。我如何检查字符串是否包含“128”?是否有任何规定知道匹配第一个字符串的第二个字符串的百分比? (如果第二个字符串中的所有字符都存在于第一个字符串中)请提前帮助和thanx。检查一个nsstring是否与另一个字符串匹配
2
A
回答
6
使用以下:
NSString *compareString = @"128";
NSCharacterSet *compareCharSet = [NSCharacterSet characterSetWithCharactersInString:@"167282"];
NSUInteger strLen = [compareString length];
NSUInteger matchingCount = 0;
for (NSUInteger i = 0; i < strLen; ++i) {
if ([compareCharSet characterIsMember:[compareString characterAtIndex:i]])
++matchingCount;
}
float percentMatching = matchingCount/(float)strLen;
凡matchingCount将在compareString中匹配一个字符,字符“167282”的号码@和percentMatching将总字符%的compareString那场比赛。这是,尽我所知,你打算用你的问题 - 百分比匹配的概念不会有任何意义,否则。
1
您总是可以使用NSString方法rangeOfString:
来检查您的原始字符串是否包含您想要的子字符串。该方法将返回一个NSRange
与子的原始字符串中的位置:如果
[@"12345" rangeOfString:@"123"]; // Gives range {0, 3}
[@"12345" rangeOfString:@"345"]; // Gives range {2, 3}
[@"12345" rangeOfString:@"678"]; // Gives range {NSNotFound, 0}
这仅适用于该子是原始字符串中完全包含。
至于“数量正确”,您可以使用返回范围的length
属性以及原始字符串的长度来查看子字符串包含的原始字符串的哪一部分。例如:
NSRange r = [@"1234" rangeOfString:@"1"]; // Range {0, 1}
float portion = (float)r.length/(float)[@"1234" length]; // Gives 0.25f
请记住,这将土崩瓦解,如果子被重复 - 检查@"1"
为@"111"
子字符串将只给予第一次出现,这意味着它会要求该字符串为“33%正确“通过这种方法。根据您的预期用途,这可能会或可能不是您想要的。
5
您可以使用NSString
的rangeOfString
方法来确定字符串是否包含另一个字符串,如this question on the Apple Mailing Lists的答案所示。
if ([@"167282" rangeOfString:@"128"].location != NSNotFound) {
NSLog(@"String contains '128'.");
}
else {
NSLog(@"String doesn't contain '128'.");
}
相关问题
- 1. 检查一个字符串是否与另一个字符串相似
- 2. 检查一个字符串是否匹配模式
- 3. 使用模式(不是字符串)检查另一个字符串是否与正则表达式匹配
- 4. 爪哇 - 检查是否字符串在另一个字符串
- 5. 检查是否匹配字符串我有一个字符串定义
- 6. 用PHP匹配一个字符串到另一个字符串
- 7. 有效检查一个字符串是否包含另一个字符串
- 8. 如何检查一个字符串是否等于另一个字符串?
- 9. 检查一个字符串是否包含另一个字符串
- 10. C - 检查字符串是否是另一个字符串的子字符串
- 11. 检查字符串是否与PHP中的另一个字符串类似?
- 12. 如何:检查一个字符串是否包含另一个字符串的另一部分,然后检索匹配的字符
- 13. 给定一个字符串,如何检查前几个字符是否是另一个字符串? C++
- 14. 检查一个变量是否与另一个数组中的值匹配。
- 15. 检查是否字符串仿佛是另一个Rails中
- 16. 检查字符串字符是否与数组值匹配
- 17. 正则表达式匹配字符串与另一个字符串Patten是/ DIG /?
- 18. 检查某个字符是否跟着另一个字符?
- 19. 查明一个字符串中是否存在匹配
- 20. 检查NSString的最后一个字符是否为数字
- 21. 如何检查一个对象是否是一个字符串?
- 22. 检查字符串的子是另一个字符串
- 23. 判断一个字符串是否是另一个子字符
- 24. 检查一个字/字母是否包含在一个字符串与JavaScript
- 25. 如何检查一个字符串是否是另一个字符串的一部分,则更换
- 26. 查看一个字符串是否包含另一个字符串
- 27. 检查一个字符串是一个字符串模式
- 28. RSpec有一个内置的匹配器来查看一个字符串是一个值还是另一个值?
- 29. Applescript:检查一个字符串是否包含空字符串?
- 30. Python 3:从另一个列表中检查多个匹配的字符串
嗨Shyam,这是一个网站,您可以提前thanx,当有人回答你的问题,确保你回来,并给他们一个upvote,并在适当时将其标记为答案。 – 2009-11-23 09:44:50