簡體   English   中英

Javascript Regex將字符串拆分為分組的/連續的字符數組

[英]Javascript Regex to split a string into array of grouped/contiguous characters

我正在嘗試做這個家伙正在做的事情,只是他在Ruby中做,而我正在嘗試通過Javascript來做:

根據連續字符將字符串拆分為數組

基本上,它只是將單個字符串拆分成連續的字符數組-例如:

給定輸入字符串

'aaaabbbbczzxxxhhnnppp'

會變成一個數組

['aaaa','bbbb','c','zz','xxx','hh','nn','ppp']

我得到的最接近的是:

    var matches = 'aaaabbbbczzxxxhhnnppp'.split(/((.)\2*)/g);
    for (var i = 1; i+3 <= matches.length; i += 3) {
        alert(matches[i]);
    }

這實際上確實有點/排序工作...但不是真正的..我顯然分裂得太多了,否則我就不必通過+3索引操作來消除虛假條目。

我怎樣才能得到一個只有我想要的干凈陣列?

謝謝-

您的正則表達式很好,您使用的是錯誤的函數。 使用String.match,而不是String.split:

var matches = 'aaaabbbbczzxxxhhnnppp'.match(/((.)\2*)/g);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM