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(/(".*?"|[^",\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>
Dieser reguläre Ausdruck verwendet zwei Erfassungsgruppen, um interessierende Teilzeichenfolgen abzugleichen:
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!