Quotes verwijderen uit een string

TypeScript:
Quotes verwijderen uit een string

Hoe te:

Hier is je nuchtere gids om die lastige aanhalingstekens los te snijden van je tekenreeksen in TypeScript.

// Optie A: Enkele of dubbele aanhalingstekens vervangen met regex
function removeQuotes(input: string): string {
  return input.replace(/^["']|["']$/g, '');
}

console.log(removeQuotes(`"Gequoteerde tekenreeks"`)); // Gequoteerde tekenreeks
console.log(removeQuotes(`'Nog een'`)); // Nog een

// Optie B: Omgaan met tekenreeksen die beginnen en eindigen met verschillende aanhalingstekens
function removeMismatchedQuotes(input: string): string {
  return input.replace(/^(['"])(.*?)(?<!\1)\1$/, '$2');
}

console.log(removeMismatchedQuotes(`"Niet overeenkomend'`)); // "Niet overeenkomend'

// Optie C: Meerdere soorten aanhalingstekens verwijderen
function removeAllQuotes(input: string): string {
  return input.replace(/['"]+/g, '');
}

console.log(removeAllQuotes(`"'Mix'n'Match'"`)); // Mix'n'Match

Diepere Duik

Lang voordat TypeScript zelfs maar een ding was, hadden JavaScript-coders al te maken met aanhalingstekentrucjes, en het verhaal is zo’n beetje hetzelfde voor TypeScript. Naarmate tijden veranderen, verandert ook de manier waarop we tekenreeksen opsnijden. Tegenwoordig, met de spierkracht van regex, schuiven we het gebruik van onhandige tekenreekslicing of andere vermoeiende methoden terzijde.

Hoewel de bovenstaande voorbeelden in de meeste van je behoeften zouden moeten voorzien, onthoud, het citeren kan complex worden. Genestelde, niet overeenkomende en geëscape’erde aanhalingstekens zijn de schavuiten die je willen laten struikelen. Voor deze gevallen heb je misschien meer geavanceerde patronen of zelfs parsers nodig om elke krullende zaak aan te kunnen.

Alternatieven? Sommige mensen gaan voor bibliotheken zoals lodash, met methoden zoals trim en trimStart / trimEnd, die aangepast kunnen worden om aanhalingstekens te knippen als je de karakters instelt die je wilt knippen.

En voor jullie TypeScript-enthousiasten, laten we de typen niet vergeten. Hoewel we ons hier voornamelijk bezighouden met tekenreeksen, wanneer je werkt met gebruikersinvoer of parsing, kan het toevoegen van enkele typebewakers of zelfs generics helpen om je code net zo veilig te houden als je aanhalingstekens zijn getrimd.

Zie Ook

Bekijk deze virtuele hotspots voor meer info: