在Objective C中,我將如何使用按鈕操作刪除字符串的最後一個字符。Objective C - 刪除字符串中的最後一個字符
142
A
回答
401
在你的控制器類,創建一個操作方法,你會鉤扣在Interface Builder中。內部的方法,你可以修剪你的字符串是這樣的:
if ([string length] > 0) {
string = [string substringToIndex:[string length] - 1];
} else {
//no characters to delete... attempting to do so will result in a crash
}
如果你想在代碼只需一行這樣的一個奇特的方式你可以這樣寫:
string = [string substringToIndex:string.length-(string.length>0)];
*花式一個行代碼段的說明:
如果有刪除一個字符(即字符串的長度比0) (string.length>0)
返回1
從而使代碼返回更大: string = [string substringToIndex:string.length-1];
如果沒有一個字符刪除(即,字符串的長度不大於0) (string.length>0)
返回0
從而使得代碼返回: string = [string substringToIndex:string.length-0];
這可以防止崩潰。
5
該文檔是你的朋友,NSString
支持呼叫substringWithRange
可以縮短你有一個返回縮短字符串的字符串。您不能修改NSString
的實例,它是不可變的。如果你有一個NSMutableString
是有一個名爲deleteCharactersInRange
方法,可以修改字符串到位
...
NSRange r;
r.location = 0;
r.size = [mutable length]-1;
NSString* shorted = [stringValue substringWithRange:r];
...
51
如果它是一個的NSMutableString(這我會建議,因爲你動態地改變它),你可以使用:
[myString deleteCharactersInRange:NSMakeRange([myRequestString length]-1, 1)];
9
這裏給出的解決方案竟然不考慮多字節Unicode字符(」組成字符「),並可能導致Unicode字符串無效。
事實上,它包含的substringToIndex
聲明iOS的頭文件中包含了以下評論:
提示:與rangeOfComposedCharacterSequencesForRange使用:避免分手組成的字符
見how to use rangeOfComposedCharacterSequenceAtIndex:
刪除最後一個字符正確。
相關問題
- 1. 修剪字符串,刪除C中的最後一個字符#
- 2. 刪除字符串c的最後一個字符#
- 3. objective-c獲取一個字符串的最後2個字符?
- 4. 刪除字符串中最後一個空格後的最後一個字符
- 5. 動態刪除最後一個字符串後/從字符串
- 6. 刪除NSString的最後一個字符
- 7. 刪除XSLT字符串中的最後一個字符
- 8. 刪除動態字符串中的最後一個字符
- 9. AppleScript:刪除文本字符串中的最後一個字符
- 10. 刪除字符串中的最後一個「X」字符
- 11. 刪除XSLT url字符串中的最後一個字符
- 12. 刪除字符串中的最後一個字符Livecode語言
- 13. 刪除python中字符串的最後一個字符
- 14. 刪除字符串中的最後一個字符和第一個字符
- 15. 刪除最後一個子字符串
- 16. Java刪除最後一個字符串
- 17. 爲什麼Python刪除字符串的最後一個字符?
- 18. 刪除字符串的最後一個字符
- 19. 刪除字符串的最後一個字符(如果存在)
- 20. 刪除字符串的最後一個字符
- 21. 刪除字符串的最後一個字符(VB.NET 2008)
- 22. Python Tkinter:刪除字符串的最後一個字符
- 23. 刪除字符串中的最後三個字符
- 24. 如何刪除特定字符後的字符串中的最後一個字
- 25. 如何從字符串中刪除/刪除最後一個字符php
- 26. SQL子字符串 - 刪除最後一個字符
- 27. 刪除字符串中的最後5個字符 - ColdFusion
- 28. Python中刪除字符串的最後3個字符
- 29. 如何從字符串中刪除最後的n個字符?
- 30. 只刪除字符串ArrayList中的最後一個字
NSMakeRange有時可以填充範圍結構看起來更優雅。 – dreamlax 2009-07-04 13:40:14
@Harald,`substringWithRange:`返回`NSString *`。記下指針。 – 2012-01-06 10:56:19