JavaScript用空格剪切字符串

时间:2016-04-26 15:44:34

标签: javascript string split

我有这个String Var str:

3002033185160426195531991010-00000000050086093500001       ул. Щевченко 36 а/б           0056763185160426195517991010-00000000080086093500001       ул. Щевченко 36 а/б           0056753185160426195501991010-00000000090086093500001       ул. Щевченко 36 а/б           005674

我需要剪切字符串并使用值创建新数组:

array[0] : "3002033185160426195531991010-00000000050086093500001"
array[1] : "0056763185160426195517991010-00000000080086093500001"
array[2] : "0056753185160426195501991010-00000000090086093500001"

我尝试使用str.split(" ");,但会有一个非常大的数组。怎么做?请帮帮我!!!

5 个答案:

答案 0 :(得分:1)

这可以使用,但它是您特定字符串的特定修复:

s.split(' ').filter(function(a) {
  return a.length > 8;
})

Working example

答案 1 :(得分:1)

假设格式已修复:

> arr = str.match(/\d{28}-\d{23}/g)
> ["3002033185160426195531991010-00000000050086093500001", "0056763185160426195517991010-00000000080086093500001", "0056753185160426195501991010-00000000090086093500001"]

答案 2 :(得分:1)

尝试像stringjs这样的字符串库。 你可以使用collapseWhitespace()方法来实现这样的东西:

var str = S('  String   \t libraries are   \n\n\t fun\n!  ').collapseWhitespace().s; //'String libraries are fun !'

然后你可以使用.split('')方法进行拆分。

答案 3 :(得分:1)

str.match(/[\d-]{50,}/g)
// => ["3002033185160426195531991010-00000000050086093500001", "0056763185160426195517991010-00000000080086093500001", "0056753185160426195501991010-00000000090086093500001"]

您可以调整50号码,该号码可以区分您想要的大号码,例如"3002033185160426195531991010-00000000050086093500001",来自您不需要的小号码,例如"36"

答案 4 :(得分:1)

工作示例

var str = '3002033185160426195531991010-00000000050086093500001       ул. Щевченко 36 а/б           0056763185160426195517991010-00000000080086093500001       ул. Щевченко 36 а/б           0056753185160426195501991010-00000000090086093500001       ул. Щевченко 36 а/б           005674';
var results = str.match(/[\d-]{50,}/g);
for (i in results) {
  var node = document.createElement("LI"); 
  var textnode = document.createTextNode(results[i].toString().trim()); 
  node.appendChild(textnode);
  
  document.getElementById("results").appendChild(node);

}
<ul id="results"></ul>