如何使用jQuery正则表达式拆分用管道符号分隔的字符串

时间:2014-03-21 12:12:30

标签: javascript jquery regex

我有一个动态生成的字符串,它基本上是一行,每个值用管道符号|分隔,我需要将它们分开并将它们插入一堆隐藏字段。

This was almost what I needed to do,但不适合我,我只能使用(~|)作为特殊字符,因为我的数据可能包含其他字符。

这是我的代码:

var data = "Val1@#|val2$%|val3(*|"; // dynamically generated 

$.each(data.split(/\s*|\s+/), function(i, val) {
    alert(val);
});

4 个答案:

答案 0 :(得分:6)

使用此:

var Data ="Val1@#|val2$%|val3(*|" //dynamically generated 
alert(Data);
$.each(Data.split(/\|/), function (i, val) {
     alert(val);
})

工作小提琴:http://jsfiddle.net/nLdcr/

答案 1 :(得分:5)

"Val1@#|val2$%|val3(*|".split('|')运行正常。正则表达式没有必要 与正则表达式相同的是:.split(/\|/)

答案 2 :(得分:2)

不需要正则表达式:

var list = Data.split("|");

答案 3 :(得分:0)

如果您使用|分隔强者,则可以使用javascript的常规string.split()功能。没有必要使用正则表达式。

HTML:

<div id="result"></div>

代码:

var data = "Val1@#|val2$%|val3(*|";

$.each(data.split('|'), function(key, value){
    $('#result').append(value).append('<br/>');
});