将两个字符串分隔为两个变量

时间:2015-11-06 13:01:01

标签: javascript

假设我有这个:

var colors = 'Red,Blue,Green,Orange,White,Brown';

我试图解析它以获得所有颜色,这意味着:

color1='Red';
color2='Blue';
[...]

我曾经使用过matches(),然后用逗号分隔,因为颜色用逗号分隔,所以我把',',但结果不是我所期望的......有没有快速的方式做到了吗?

4 个答案:

答案 0 :(得分:5)

  

有没有快速的方法呢?

是的,我建议您使用split()

正如文档所说:

  

split()方法用于将字符串拆分为子字符串数组,并返回新数组。

     

提示:如果使用空字符串(“”)作为分隔符,则在每个字符之间分配字符串。

     

注意:split()方法不会更改原始字符串。

所以你可以做同样的颜色:

var colors = 'Red,Blue,Green,Orange,White,Brown'.split(','); //use .split() to split the character you want to.
var color1 = colors[0];
var color2 = colors[1];
var color3 = colors[2];
[...]
alert("Color 1 = " +color1 + "\n"+ "Color 2 =  " + color2);

现在你可以做一些逻辑来了解var colors或你想要的任何项目。

希望它有所帮助。

答案 1 :(得分:4)

如果您不介意将其放在全局对象上:

'Red,Blue,Green,Orange,White,Brown'.split(',').forEach(function(color, index ){
  window['color' + index] = color;
});

答案 2 :(得分:2)

要将其与正则表达式匹配,您只需使用符合以下任何字符\w+的{​​{1}}。

A-Z a-z 0-9 _

如果您担心匹配数字和下划线,您可以随时使用var colors = 'Red,Blue,Green,Orange,White,Brown'; var matches = colors.match(/\w+/g); console.log(matches[0]);

答案 3 :(得分:-1)

您可以使用以下代码:

String [] stringParts = myString.split(":");
相关问题