Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JQuery字符串,如何拆分和更改顺序_Javascript_Jquery_String_Split - Fatal编程技术网

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

Javascript JQuery字符串,如何拆分和更改顺序,javascript,jquery,string,split,Javascript,Jquery,String,Split,我想知道有没有办法在JQuery中拆分字符串,并以不同的顺序显示它? 例如:aaa bbb,ccc应为bbb aaa ccc(无逗号!) aaa bbb、ccc 任何想法欢迎split()方法用于将字符串拆分为子字符串数组,并返回新数组,然后根据需要加入 str.split("[,\\s]+"); 是的,你可以把它们分开。看起来您需要同时使用空格和逗号作为分隔符,因此: var str = "one two, three"; var parts = str.split(/[ ,]+/);

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

aaa bbb、ccc
任何想法欢迎

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

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

是的,你可以把它们分开。看起来您需要同时使用空格和逗号作为分隔符,因此:

var str = "one two, three";
var parts = str.split(/[ ,]+/);
这将为您提供一个数组(
“一”、“二”、“三”
)。然后可以根据需要重新组织元素。在本例中,看起来您正在交换前两个。当您拥有所需的阵列时,可以将其与
join
重新组合:

//...update `parts`, then:
str = parts.join(" ");
或者,如果始终只交换前两个,并且始终有三个,则可以使用正则表达式替换
replace

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

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

具体取决于您想要实现什么,有几种方法,但这是一种方法:

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

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

现场查看:

使用纯JavaScript,您可以按非字母顺序拆分
/[^a-z]/
如果这是相关的,jQuery没有自己的字符串。JavaScript有,但是。true,这就是为什么我删除了我的注释:)这总是变化吗?中间的和第一个要交换的?还有,只有3个项目吗?我不认为可以自动进行重新排序。你可以使用join删除,character.OP没有要求重新排序换句话说,输出应该是“bbb aaa ccc”(或者在你的例子中是“2-1-3”)@SmokeyHP:是的,刚刚注意到,多亏有人对这个问题的评论,谢谢。
var text = $('.string').html().replace(',','').split(' ');

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