首頁  >  文章  >  web前端  >  如何在 JavaScript 中用逗號分割字串,同時忽略雙引號內的逗號?

如何在 JavaScript 中用逗號分割字串,同時忽略雙引號內的逗號?

Patricia Arquette
Patricia Arquette原創
2024-10-28 05:16:30418瀏覽

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

用逗號分割字串並忽略雙引號內的字串(JavaScript)

使用字串時,可能需要分割它們根據指定的分隔符號轉換為元素數組。但是,有時分隔符號出現在雙引號內,在拆分時應忽略該分隔符號。

考慮以下需要轉換為六個元素的陣列的字串:「a, b, c,」d, e、f」、g、h」。目標是分隔每個元素,同時忽略雙引號中的逗號。

一種方法是使用正規表示式:

<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>

以下是正規表示式的細分:

(
    &quot;.*?&quot;       # double quotes + anything but double quotes + double quotes
    |           # OR
    [^&quot;,\s]+    # 1 or more characters excl. double quotes, comma or spaces of any kind
)
(?=             # FOLLOWED BY
    \s*,        # 0 or more empty spaces and a comma
    |           # OR
    \s*$        # 0 or more empty spaces and nothing else (end of string)
)

此正規表示式將捕捉雙引號字串或任何其他非逗號或空格的字符,防止引號逗號被拆分。

arr 陣列將包含分割元素,其中然後可以記錄或用於進一步處理。

以上是如何在 JavaScript 中用逗號分割字串,同時忽略雙引號內的逗號?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn