JavaScript split()。join()千万个分隔符替换.replace()以便在eBay上使用

时间:2013-08-10 15:22:05

标签: javascript ebay

我在我的网站上使用此逗号分隔数千个,效果很好......

str.replace(/\B(?=(\d{3})+(?!\d))/g, ",");

我正在尝试使用split()。join()为ebay实现类似的方法,因为eBay禁止使用.replace(),任何解决方案?

我尝试在split()中使用相同的regx,但到目前为止它没有以相同的方式工作。

感谢。

3 个答案:

答案 0 :(得分:0)

也许您可以尝试使用search()来获取字符串的索引并删除给定索引的字符。

var pre_string = str.substing(0, found_index);
var post_string = str.substing(found_index + 3);
var replaced_string = pre_string + post_string;

答案 1 :(得分:0)

("100,00,0").split(',').join(''); //"100000"

这样的东西?

parseInt( ("100,00,0").split(',').join('') ,10); //100000

答案 2 :(得分:0)

我认为你指的是:

Javascript .Replace Alternative

在那里代码(由WereWolf - The Alpha)是:

String.prototype.fakeReplace=function(str, newstr) {
    return this.split(str).join(newstr);
};
var str="Welcome javascript";
str=str.fakeReplace('javascript', '');
alert(str); // Welcome

所以,你的:

str.replace(/\B(?=(\d{3})+(?!\d))/g, ",");

变为:

str.myReplace(/\B(?=(\d{3})+(?!\d))/g, ",");

如何?

因为.split(STR)将字符串拆分为STR(将进程中的STR删除)为两个元素数组(或更多),然后使用.join(NEWSTR)重新加入它,将NEWSTR置于数组中的两个字符串之间。 / p>

"hello STR world" --.split(STR)--> ["hello "," world"] --.join(NEWSTR)--> "hello NEWSTR world"