Heim  >  Artikel  >  Web-Frontend  >  Wie teile ich eine Zeichenfolge durch Kommas auf und ignoriere dabei Text in doppelten Anführungszeichen in JavaScript?

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

DDD
DDDOriginal
2024-10-26 17:46:30827Durchsuche

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

Aufteilen von Zeichenfolgen durch Kommas und Ignorieren von Text in doppelten Anführungszeichen

Die Aufgabe, eine Zeichenfolge durch Kommas aufzuteilen, stellt eine einzigartige Herausforderung dar, wenn darin Kommas vorkommen doppelte Anführungszeichen. So erreichen Sie dies in Javascript:

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

Dieser Regex-basierte Ansatz folgt einem bestimmten Muster zum Extrahieren von Teilzeichenfolgen:

  • ("".*?" ; oder [^",s]): Entspricht entweder Segmenten in doppelten Anführungszeichen („d, e, f“) oder Sequenzen ohne Anführungszeichen, Kommas oder Leerzeichen (a).
  • ((?=s*,|s*$)): Stellt sicher, dass auf Übereinstimmungen entweder ein Komma und ein Leerzeichen oder das Ende der Zeichenfolge folgen, um eine ordnungsgemäße Aufteilung sicherzustellen.

Die Das Ergebnis ist ein Array aus sechs Elementen:

arr = [ 'a', 'b', 'c', '"d, e, f"', 'g', 'h' ]

Das obige ist der detaillierte Inhalt vonWie teile ich eine Zeichenfolge durch Kommas auf und ignoriere dabei Text in doppelten Anführungszeichen in JavaScript?. 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