Javascript 如何使用jQuery正则表达式拆分以管道符号分隔的字符串
我有一个动态生成的字符串,它基本上是一行,每个值由管道符号Javascript 如何使用jQuery正则表达式拆分以管道符号分隔的字符串,javascript,jquery,regex,Javascript,Jquery,Regex,我有一个动态生成的字符串,它基本上是一行,每个值由管道符号|分隔,我需要将其分隔并将其插入一组隐藏字段中 ,但不适用于我,我只能使用(~或|)作为特殊字符,因为我的数据可能包含其他字符 这是我的密码: var data = "Val1@#|val2$%|val3(*|"; // dynamically generated $.each(data.split(/\s*|\s+/), function(i, val) { alert(val); }); “Val1@#| val2$%|
|
分隔,我需要将其分隔并将其插入一组隐藏字段中
,但不适用于我,我只能使用(~
或|
)作为特殊字符,因为我的数据可能包含其他字符
这是我的密码:
var data = "Val1@#|val2$%|val3(*|"; // dynamically generated
$.each(data.split(/\s*|\s+/), function(i, val) {
alert(val);
});
“Val1@#| val2$%| val3(*|)”。拆分(“|”)
工作正常。不需要正则表达式。与正则表达式等价的是:
.split(/\\124;/)
不需要正则表达式:
var list = Data.split("|");
使用以下命令:
var Data ="Val1@#|val2$%|val3(*|" //dynamically generated
alert(Data);
$.each(Data.split(/\|/), function (i, val) {
alert(val);
})
工作小提琴:如果您使用
|
分隔字符串,您可以使用javascript的正常string.split()
函数。无需使用正则表达式
HTML:
代码:
var data=“Val1@#|val2$%|val3(*|“;
$.each(data.split(“|”)、函数(键、值){
$(“#结果”).append(值).append(“
”);
});
为什么不直接执行Data.split(“|”)
?这将为您提供一个值数组(以及一个空字符串作为字符串以“|”结尾的最后一个值)。不使用正则表达式也可以,但我正试图学习正则表达式,所以这只是一个愿望,但无论如何都需要一个解决方案:-(.@Amarnathrsenoy你想学习,从regex中的REGEXONESo escape开始,就像Aziz Shaikh的回答一样,中的第二个参数每个
都是一个函数,这意味着什么?谢谢兄弟,这就是我在寻找的:D@MrX返回第四个空值,因为输入包含“|”最后。使用这个更新的提琴来避免空值:谢谢你,这是属于regex的吗???@AmarnathRShenoy buddy为什么你想用剑杀死一只苍蝇???@aelor:用剑杀死一只苍蝇真是令人印象深刻
<div id="result"></div>
var data = "Val1@#|val2$%|val3(*|";
$.each(data.split('|'), function(key, value){
$('#result').append(value).append('<br/>');
});