2015-12-17 136 views
-3

Salaamun AlekumJavascript或JQuery分割字母數字字符串

我試圖搜索JavaScript分割字母數字字符串的功能,但我無法找到它。

我想有一個像Split功能功能在JQuery

例子:

"NewFolder333".AplhaNumericSplit(); 
["NewFolder","333"]///Result Splitted Array 

謝謝

+0

您可以添加所有可能的輸入字符串 – Tushar

+0

改成分體式( 「NewFolder333」); –

+0

我不認爲有任何直接的方法在jQuery或javscript爲您的目的,我會建議您爲此創建簡單的手動解析器 – dreamweiver

回答

4

做配套,而不是分裂..

string.match(/[a-z]+|\d+/ig) 
4

TL;博士

<string>.match(/[^\d]+|\d+/g) 

,以便從"NewFolder333"["section", "4", "rubrique", "2"]"section-4-rubrique-2"獲得["NewFolder" ,"333"]可以使用一個正則表達式作爲match()圖案分割一個Alpha數字字符串。

正規表達式會關注你是

​​
  • //:創建一個正則表達式。
  • g:允許您的匹配功能獲取所有匹配的零件。
  • [^\d]+:獲取可能包含除數字之外的所有字符的字符串。
  • '|:或。
  • \d+:獲取所有數字字符。

所以在下面的代碼,結果將包含["NewFolder" ,"333"]

var result = "NewFolder333".match(/[^\d]+|\d+/g); 
 
alert(result);


而在稍加修改,你也可以忽略_-

  • [^-_ \d]+:獲取可能包含除數字之外的所有字符的字符串,,_-

而下面的結果將包含["section", "4", "rubrique", "2"]

var result = "section-4-rubrique-2".match(/[^-_ \d]+|\d+/g); 
 
alert(result);

var result = "section_4-rubrique_2".match(/[^-_ \d]+|\d+/g); 
 
alert(result);

var result = "section-4 rubrique-2".match(/[^-_ \d]+|\d+/g); 
 
alert(result);