Quotes verwijderen uit een string

Swift:
Quotes verwijderen uit een string

Hoe:

Swift laat je de klus van het verwijderen van aanhalingstekens vrij handig aanpakken. Hier is een snel voorbeeld met replacingOccurrences(of:with:), wat precies doet wat het klinkt alsof het doet—stukjes tekst vervangen met iets anders, of helemaal niets.

var quotedString = "\"Dit is een 'gequote' string.\""
let unquotedString = quotedString.replacingOccurrences(of: "\"", with: "")
print(unquotedString) // Dit is een 'gequote' string.

// Omgaan met enkele aanhalingstekens? Verander gewoon de zoekterm.
quotedString = "'Hier is nog een voorbeeld.'"
let singleQuoteRemoved = quotedString.replacingOccurrences(of: "'", with: "")
print(singleQuoteRemoved) // Hier is nog een voorbeeld.

De output zal strings zijn zonder aanhalingstekens, helemaal klaar voor wat je hierna ook hebt gepland.

Diepere Duik

We zijn strings als deze aan het “opruimen” sinds het begin van programmeren. In de vroege dagen was het meer over het besparen van kostbaar geheugen en het vermijden van syntaxfouten bij het verwerken van invoer. Fast forward naar vandaag, en het gaat om goede datahygiëne—vooral wanneer je te maken hebt met JSON of strings voorbereidt voor database werk. Een verdwaalde quote kan sneller een sleutel in SQL queries gooien dan je “syntaxfout” kunt zeggen.

Alternatieven? Wel, als je replacingOccurrences(of:with:) een beetje te vanille vindt, zou je kunnen duiken in reguliere expressies voor meer complexe patronen of wanneer je quotes alleen op bepaalde posities wilt verwijderen. De NSRegularExpression klasse van Swift is hier je vriend. Maar onthoud, regex kan een tweesnijdend zwaard zijn—krachtig maar soms overkill.

Wat implementatie betreft, is replacingOccurrences(of:with:) een methode die wordt aangeboden door String in Swift, die intern meer complexe stringmanipulatiefuncties aanroept die Unicode en andere ingewikkeldheden van moderne tekstverwerking aanpakken. Het is een van die “simpel aan de oppervlakte, complex onder de motorkap” deals die Swift voor je afhandelt, zodat je dat niet hoeft te doen.

Zie Ook

Voor meer over stringmanipulaties in Swift:

En als je nu nieuwsgierig bent naar reguliere expressies en je patronen wilt testen: