我想知道有没有办法在 JQuery 中拆分string
并以不同的顺序显示它?
例如: aaa bbb,ccc 应该是 bbb aaa ccc (没有逗号!)
<div class="string">aaa bbb, ccc</div>
欢迎任何想法
答案 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]);
答案 2 :(得分:0)
split()方法用于将字符串拆分为子字符串数组,并返回新数组,然后根据您的意愿加入。
str.split("[,\\s]+");