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

Wie teile ich mit JavaScript eine Zeichenfolge durch Kommas auf und ignoriere Kommas in doppelten Anführungszeichen?

Barbara Streisand
Freigeben: 2024-10-26 19:04:02
Original
234 Leute haben es durchsucht

How to Split a String by Commas, Ignoring Commas Within Double Quotes Using JavaScript?

Teilen Sie eine Zeichenfolge durch Kommas und ignorieren Sie Kommas in doppelten Anführungszeichen mit JavaScript

Um die Herausforderung zu meistern, eine Zeichenfolge durch Kommas zu teilen und dabei doppelte Anführungszeichen beizubehalten In Anführungszeichen gesetzte Segmente können wir reguläre Ausdrücke in JavaScript verwenden. So geht's:

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

// Handle the case of no matches to prevent errors
arr = arr || [];

// Iterate over the matches and display them
for (var i = 0; i < arr.length; i++) {
  console.log('arr[' + i + '] =', arr[i]);
}</code>
Nach dem Login kopieren

Dieser reguläre Ausdruck verwendet zwei Erfassungsgruppen, um interessierende Teilzeichenfolgen abzugleichen:

  • Gruppe 1: Entspricht Segmenten in doppelten Anführungszeichen (" d, e, f“) mit einem gierigen Operator (.*?), um alles in doppelte Anführungszeichen zu erfassen.
  • Gruppe 2: Entspricht jeder anderen Zeichenfolge (z. B. „a“, „g“), das keine doppelten Anführungszeichen, Kommas oder Leerzeichen ([^",s]) enthält.

Die Lookahead-Zusicherung (?=s*,|s*$) gewährleistet dass auf die Übereinstimmung entweder ein Leerzeichen und ein Komma oder das Ende der Zeichenfolge folgen. Dadurch wird sichergestellt, dass wir nur durch Kommas getrennte Segmente erfassen.

Durch den Abgleich sowohl von Segmenten in Anführungszeichen als auch von Segmenten ohne Anführungszeichen teilt diese Lösung die gegebene Zeichenfolge genau in ein Array aus sechs Elementen auf: ["a", "b", "c". ", "d, e, f", "g", "h"].

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

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage