我正在尝试转换此字符串
.jpg,.gif,.png
进入此(逗号后不是点和空格)
jpg, gif, png
我认为JS中的数组PHP's str_replace
之类的东西会起作用,所以我找到了this post,特别是this answer。我尝试了但是没有按预期工作。我得到一个空白的字符串......我做错了什么?
JS
String.prototype.replaceArray = function(find, replace)
{
var replaceString = this;
var regex;
for (var i = 0; i < find.length; i++)
{
regex = new RegExp(find[i], "g");
replaceString = replaceString.replace(regex, replace[i]);
}
return replaceString;
};
var my_string = ".jpg,.gif,.png";
alert(my_string.replaceArray([".", ","],["", ", "]));
答案 0 :(得分:3)
您要替换的第一件事是句点("."
),它是任何字符的正则表达式。你需要逃避它:"\\."
答案 1 :(得分:0)
我刚刚这样做了:
var target = '.jpg,.gif,.png';
target = target.replace(/\\./g, '');
target = target.replace(/,/g, ', ');
我确信它可以更有效地完成,但这将完成工作。
答案 2 :(得分:0)
您可以将您的fn更改为:
function strToArr(str)
{
var res = str.replace(/\./g, "");
return res.split(",");
}