Ich habe einige Probleme, bevor ich versuche, das letzte Zeichen eines NSStrings zu entfernen. Ich bin ein bisschen ein Neuling in Objective-C und ich habe keine Ahnung, wie ich das machen soll.
Könntet ihr mich zum Leuchten bringen?
objective-c
nsstring
Markus
quelle
quelle
Antworten:
NSString *newString = [oldString substringToIndex:[oldString length]-1];
Beachten Sie immer die Dokumentation :
substringToIndex:
length
So fügen Sie für Ihren Fall relevanten Code hinzu:
NSString *str = textField.text; NSString *truncatedString = [str substringToIndex:[str length]-1];
quelle
#import <Foundation/Foundation.h>
Mac OS X 10.0 oder höher / iOS 2.0 oder höher verwenden, ist es ja richtig. Stellen Sie sicher, dass Sie die in den Xcode-Einstellungen festgelegte Dokumentation herunterladen, um die automatische Vervollständigung der Methode zu erhalten.Versuche dies:
s = [s substringToIndex:[s length] - 1];
quelle
NSString *string = [NSString stringWithString:@"ABCDEF"]; NSString *newString = [string substringToIndex:[string length]-1]; NSLog(@"%@",newString);
Sie können = ABCDE sehen
quelle
NSString = *string = @"abcdef"; string = [string substringToIndex:string.length-(string.length>0)];
Wenn ein zu löschendes Zeichen vorhanden ist (dh die Länge der Zeichenfolge größer als 0 ist), wird
(string.length>0)
1 zurückgegeben, sodass der Code Folgendes zurückgibt:string = [string substringToIndex:string.length-1];
Wenn KEIN Zeichen zum Löschen vorhanden ist (dh die Länge der Zeichenfolge ist NICHT größer als 0), wird
(string.length>0)
0 zurückgegeben, sodass der Code Folgendes zurückgibt:string = [string substringToIndex:string.length-0];
das verhindert Abstürze.
quelle
Dieser Code gibt nur das letzte Zeichen der Zeichenfolge zurück und entfernt es nicht:
NSString *newString = [oldString substringToIndex:[oldString length]-1];
Sie können dies stattdessen verwenden, um das letzte Zeichen zu entfernen und die verbleibenden Werte einer Zeichenfolge beizubehalten:
str = [str substringWithRange:NSMakeRange(0,[str length] - 1)];
und auch mit substringToIndex mit zu einem NSString 0 Länge wird zu Abstürzen führen.
Sie sollten vorher eine Validierung hinzufügen, wie folgt:
if ([str length] > 0) { str = [str substringToIndex:[s length] - 1]; }
Damit ist es sicher, die Teilzeichenfolgenmethode zu verwenden.
HINWEIS: Apple lehnt Ihre Anwendung ab, wenn sie für Abstürze anfällig ist.
quelle
Einfacher und bester Ansatz
[mutableString deleteCharactersInRange:NSMakeRange([myRequestString length]-1, 1)];
quelle