假設我有一個字符串「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