如果我有字符串「Life is Good」。現在我需要從適合寬度爲40的字符串中提取一些單詞。如何從目標C實現此目標?從字符串中提取適合特定寬度的字符串
回答
你的答案是正確的,但以適應確切40我已經改正了< =到==這樣新的代碼將是
NSString *longestFitting = nil;
NSString *orig = "Life is Good";
UIFont *font = ...;
for (int i = orig.length-1 ; i > 1 ; i--)
{
NSString *tmp = [orig substringToIndex:i];
if ([tmp sizeWithFont:font].width == 40)
{
longestFitting = tmp;
break;
}
}
您可以在循環使用sizeWithFont:
方法,像這樣:
NSString *longestFitting = nil;
NSString *orig = "Life is Good";
UIFont *font = ...;
for (int i = orig.length-1 ; i > 1 ; i--) {
NSString *tmp = [orig substringToIndex:i];
if ([tmp sizeWithFont:font].width <= 40) {
longestFitting = tmp;
break;
}
}
你的答案是正確的,但要適合確切的40我已經糾正一個<=爲==所以新的代碼將是 NSString * longestFitting = nil; NSString * orig =「生活是美好的」; UIFont * font = ...; (int i = orig.length-1; i> 1; i--){ NSString * tmp = [orig substringToIndex:i]; ([tmp sizeWithFont:font] .width == 40){ longestFitting = tmp; 休息; } } – shrestha2lt8 2012-07-18 12:10:33
@ shrestha2lt8有一個機會,你不會找到一個確切的長度:'生命是'可能是42,'生活我'可能是38. – dasblinkenlight 2012-07-18 12:18:58
感謝您的解決方案。除非在iOS 7中不推薦使用'sizeWithFont:',否則請使用'[tmp sizeWithAttributes:@ {NSFontAttributeName:font}]''。 – anneblue 2014-07-24 14:28:14
- 1. 從字符串中提取特定值
- 2. 從字符串中提取字符串
- 3. 從另一字符串中提取字符串兩個特定字符
- 4. 從包含特殊字符的字符串中提取子串
- 5. 從字符串中提取特別匹配的子字符串
- 6. 如何從cpp中給定的字符串中提取特定的字符串?
- 7. 從任意長度的字符串中提取子字符串
- 8. 從字符串中提取可變長度的子字符串
- 9. 從字符串中提取未知長度的字符串
- 10. 從字符串中的特定字符串模式中提取數字
- 11. 從字符串中提取所有出現的特定字符
- 12. 從字符串獲取特定字符
- 13. 從特定字符串提取信息
- 14. 在java中使用字符串:提取特定字符串
- 15. sed的 - 提取特定字符串中
- 16. VB2010從數組字符串中提取特定字符
- 17. 從字符串矢量中提取特定字符
- 18. 如何從字符串中提取特定字符
- 19. 從Powershell中的複雜字符串中提取特定的字符串
- 20. 如何從PHP中的字符串變量中提取特定的字符串?
- 21. 提取特定字符串變量之間的字符串
- 22. T-sql子字符串函數提取特定的字符串
- 23. 提取字符串出一組特定字符串的
- 24. 如何從字符串中提取指定的字符串
- 25. 從字符串中提取字符
- 26. 從字符串中提取字符
- 27. 從arraylist中提取組合字符串
- 28. 正則表達式從字符串中提取特定的子字符串
- 29. sed命令從整個字符串中提取特定的字符串
- 30. 從字符串中提取特定的字符串模式(swift 2)
你在OSX或iOS? – dasblinkenlight 2012-07-18 11:34:26
我需要在iOS上。你能給我提供客觀的C代碼示例嗎? – shrestha2lt8 2012-07-18 11:37:17
你有'UIFont',對吧? – dasblinkenlight 2012-07-18 11:39:15