MySQL heeft een TRIM()
functie waarmee u voorloop- en/of volgspaties uit een tekenreeks kunt verwijderen.
Je kunt het ook gebruiken om andere gespecificeerde tekens van beide kanten (of beide kanten) van de tekenreeks te verwijderen.
In dit artikel wordt uitgelegd hoe u gespecificeerde voorloop-/aflooptekens uit de tekenreeks verwijdert.
Syntaxis
De TRIM()
functie kan als volgt worden gebruikt:
TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str)
Of zoals dit:
TRIM([remstr FROM] str)
Wat dit in feite betekent, is dat u witruimte of elk ander gespecificeerd teken kunt verwijderen vanaf het begin van de tekenreeks, het einde van de tekenreeks of van beide zijden van de tekenreeks.
U kunt dus BOTH
. specificeren om tekens aan beide uiteinden van de tekenreeks bij te snijden, of u kunt LEADING
. gebruiken om alleen de opgegeven tekens aan het begin van de tekenreeks bij te snijden. Op dezelfde manier kunt u TRAILING
. gebruiken om alleen die tekens aan het einde van de tekenreeks te verwijderen.
De remstr
deel is waar je het teken specificeert dat moet worden bijgesneden, en de str
deel is de eigenlijke string die moet worden bijgesneden.
Voorbeeld
Hier is een eenvoudig voorbeeld van het verwijderen van een bepaald teken aan beide kanten van een tekenreeks:
SELECT TRIM('=' FROM '=FRESH COOKIES!=') AS Trimmed;
Resultaat:
+----------------+ | Trimmed | +----------------+ | FRESH COOKIES! | +----------------+
De string wordt dus ontdaan van het opgegeven teken aan beide zijden van de string.
Meerdere exemplaren van het opgegeven teken
Het zal meerdere instanties van het gegeven teken verwijderen (zolang het zich binnen een aaneengesloten groep van dezelfde voorloop-/achtertekens bevindt):
SELECT TRIM('=' FROM '====FRESH COOKIES!====') AS Trimmed;
Resultaat:
+----------------+ | Trimmed | +----------------+ | FRESH COOKIES! | +----------------+
Alleen voorlooptekens verwijderen
U kunt opgeven dat alleen voorlooptekens worden bijgesneden. Gebruik hiervoor de LEADING
specificatie:
SELECT TRIM(LEADING '=' FROM '====FRESH COOKIES!====') AS Trimmed;
Resultaat:
+--------------------+ | Trimmed | +--------------------+ | FRESH COOKIES!==== | +--------------------+
Alleen achterste tekens verwijderen
U kunt opgeven dat alleen volgtekens worden bijgesneden. Gebruik hiervoor de TRAILING
specificatie:
SELECT TRIM(TRAILING '=' FROM '====FRESH COOKIES!====') AS Trimmed;
Resultaat:
+--------------------+ | Trimmed | +--------------------+ | ====FRESH COOKIES! | +--------------------+
Een reeks tekens verwijderen
U kunt ook specificeren dat alleen een specifieke reeks tekens wordt bijgesneden:
SELECT TRIM(BOTH '!====' FROM '====FRESH COOKIES!====') AS Trimmed;
Resultaat:
+-------------------+ | Trimmed | +-------------------+ | ====FRESH COOKIES | +-------------------+
Het is je misschien opgevallen dat ik de BOTH
. heb gebruikt trefwoord in dit voorbeeld. Dit is optioneel. Dezelfde verklaring zou zonder deze kunnen worden herschreven:
SELECT TRIM('!====' FROM '====FRESH COOKIES!====') AS Trimmed;
Resultaat:
+-------------------+ | Trimmed | +-------------------+ | ====FRESH COOKIES | +-------------------+
Andere toepassingen van TRIM()
U kunt ook TRIM()
. gebruiken om volgspatie te verwijderen, voorloopspatie te verwijderen of om zowel voorloop- als volgspatie te verwijderen.