JQuery字符串,如何拆分和更改顺序

时间:2013-07-31 09:40:31

标签: javascript jquery string split

我想知道有没有办法在 JQuery 中拆分string并以不同的顺序显示它? 例如: aaa bbb,ccc 应该是 bbb aaa ccc (没有逗号!)

<div class="string">aaa bbb, ccc</div>

欢迎任何想法

3 个答案:

答案 0 :(得分:2)

是的,你可以分开那些。看起来你需要空格和逗号作为分隔符,所以:

var str = "one two, three";
var parts = str.split(/[ ,]+/);

这会给你一个数组("one", "two", "three")。然后,您可以根据需要重新组织元素。在这种情况下,看起来你正在交换前两个。如果您拥有所需的数组,可以将其与join

重新组合
//...update `parts`, then:
str = parts.join(" ");

或者,如果您总是只是交换前两个,并且总是有三个,那么您可以将replace与正则表达式一起使用:

var str = "one two, three";
str = str.replace(/^([^ ,]+)[ ,]+([^ ,]+)[ ,]+([^ ,]+)(.*)/, "$2 $1 $3$4");

([^ ,]+)表示“捕获至少一个不包含空格或,的字符长度的一系列字符”。 [ ,]+表示“匹配一系列空格和/或逗号。在替换字符串中,$1表示第一个捕获组,$ 2表示第二个捕获组,等等。

答案 1 :(得分:1)

具体取决于你想要达到的目标,有几种方法,但这是一种方式:

var text = $('.string').html().replace(',','').split(' ');

$('.string').text(text[1] + ' ' + text[0] + ' ' + text[2]);

在此处观看:http://jsfiddle.net/Trufa/7DG8G/

答案 2 :(得分:0)

split()方法用于将字符串拆分为子字符串数组,并返回新数组,然后根据您的意愿加入。

 str.split("[,\\s]+");