Swift:
Anführungszeichen aus einem String entfernen
Wie:
Swift ermöglicht es Ihnen, die Aufgabe, Anführungszeichen zu entfernen, ziemlich geschickt zu bewältigen. Hier ist ein schnelles Beispiel unter Verwendung von replacingOccurrences(of:with:)
, die genau das tut, was es klingt - es tauscht Teile des Textes mit etwas anderem aus, oder auch gar nichts.
var quotedString = "\"Das ist ein 'zitierter' String.\""
let unquotedString = quotedString.replacingOccurrences(of: "\"", with: "")
print(unquotedString) // Das ist ein 'zitierter' String.
// Umgang mit einfachen Anführungszeichen? Ändern Sie einfach den Suchbegriff.
quotedString = "'Hier ist ein weiteres Beispiel.'"
let singleQuoteRemoved = quotedString.replacingOccurrences(of: "'", with: "")
print(singleQuoteRemoved) // Hier ist ein weiteres Beispiel.
Die Ausgabe wird Anführungszeichen-freie Strings sein, alles bereit für was auch immer Sie als nächstes geplant haben.
Tiefere Betrachtung
Wir “bereinigen” Strings wie diese seit der Morgendämmerung der Programmierung. In den frühen Tagen ging es mehr darum, kostbaren Speicher zu sparen und Syntaxfehler bei der Verarbeitung von Eingaben zu vermeiden. Springen Sie nach vorne bis heute, und es geht um gute Datenhygiene - besonders wenn man mit JSON arbeitet oder Strings für die Datenbankarbeit vorbereitet. Ein verirrtes Anführungszeichen kann einen Schraubenschlüssel in SQL-Abfragen werfen, schneller als man “Syntaxfehler” sagen kann.
Alternativen? Nun, wenn Sie replacingOccurrences(of:with:)
ein bisschen zu einfach finden, könnten Sie sich in reguläre Ausdrücke für komplexere Muster vertiefen oder wenn Sie Anführungszeichen nur an bestimmten Positionen entfernen möchten. Swifts NSRegularExpression
Klasse ist hier Ihr Freund. Aber denken Sie daran, dass Regex ein zweischneidiges Schwert sein kann - mächtig, aber manchmal übertrieben.
Implementierungstechnisch ist replacingOccurrences(of:with:)
eine Methode, die von String
in Swift bereitgestellt wird, die intern komplexere String-Manipulationsfunktionen aufruft, die Unicode und andere Feinheiten der modernen Textverarbeitung handhaben. Es ist eines dieser “einfach an der Oberfläche, komplex unter der Haube”-Dinge, die Swift handhabt, damit Sie es nicht müssen.
Siehe auch
Für mehr über String-Manipulationen in Swift:
- Die Swift-Programmiersprache (Strings and Characters): Swift.org-Dokumentation
- NSRegularExpression: Apple Developer Dokumentation
Und wenn Sie jetzt neugierig auf reguläre Ausdrücke sind und Ihre Muster testen möchten:
- Regex101: Regex Tester und Debugger