Heim >Web-Frontend >js-Tutorial >Wie teile ich eine Zeichenfolge durch Kommas auf und behalte dabei Kommas in doppelten Anführungszeichen in JavaScript bei?

Wie teile ich eine Zeichenfolge durch Kommas auf und behalte dabei Kommas in doppelten Anführungszeichen in JavaScript bei?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-27 01:13:30199Durchsuche

How to Split a String by Commas While Preserving Commas Within Double Quotes in JavaScript?

Aufteilen von Zeichenfolgen durch Kommas unter Beibehaltung von Kommas in doppelten Anführungszeichen in JavaScript

Wenn Sie mit Zeichenfolgen arbeiten, die sowohl Kommas als auch Abschnitte in doppelte Anführungszeichen enthalten, ist es erforderlich, die Zeichenfolge zu teilen in Elemente unter Beibehaltung der doppelten Anführungszeichen. Dies kann in JavaScript aufgrund der inkonsistenten Handhabung doppelter Anführungszeichen eine besondere Herausforderung darstellen.

Um eine Zeichenfolge auf diese Weise effektiv aufzuteilen, können Sie einen regulären Ausdruck verwenden, der Token anhand bestimmter Kriterien identifiziert und trennt. Betrachten Sie den folgenden Ansatz:

<code class="javascript">var str = 'a, b, c, "d, e, f", g, h';
var arr = str.match(/(&quot;.*?&quot;|[^&quot;,\s]+)(?=\s*,|\s*$)/g);</code>

Dieser reguläre Ausdruck besteht aus zwei Teilen:

  • (".*?"):Dieser Teil entspricht jedem Double In Anführungszeichen gesetzter Teilstring, in dem die doppelten Anführungszeichen enthalten sind.
  • (1 ): Dieser Teil entspricht jedem nicht leeren Teilstring, der nicht leer ist. t enthält doppelte Anführungszeichen, Kommas oder Leerzeichen.

Der Teil (?=s*,|s*$) ist eine positive Lookahead-Behauptung, die sicherstellt, dass auf die Übereinstimmung ein Komma und ein Leerzeichen oder folgen das Ende der Zeichenfolge. Dies verhindert die Aufteilung von Unterabschnitten in doppelte Anführungszeichen.

Das resultierende Array arr enthält sechs Elemente: ["a", "b", "c", "d, e, f", "g", "h"].

Durch die Verwendung dieses regulären Ausdrucks können Sie eine Zeichenfolge genau durch Kommas aufteilen und gleichzeitig die Integrität von Abschnitten in doppelten Anführungszeichen bewahren, sodass sie für viele Datenmanipulationsaufgaben geeignet ist.


  1. ",s

Das obige ist der detaillierte Inhalt vonWie teile ich eine Zeichenfolge durch Kommas auf und behalte dabei Kommas in doppelten Anführungszeichen in JavaScript bei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn