我希望有更好的方法来写这个?删除 [] 方括号对我来说是个问题。
alert(CanvasData)//images[]=Base.jpg&images[]=Frame_Clear.png&images[]=Left_Clear.png&images[]=Right_Clear.png&images[]=Lenses_Lenses-Semi-Clear.png&images[]=
var PayName = CanvasData.replace("images[]=", "");
PayName = PayName.replace(/\[.*?\]/g, '');
PayName = PayName.replace(/\&images=/g, ' ');
PayName = PayName.replace(/\.png/g, " &");
PayName = PayName.replace(/\_/g, ' ');
PayName = PayName.substring(8);//remove fist 8 character (Base.jpg)
PayName = PayName.substring(0, PayName.length - 2);//remove last 2 characters // Frame Clear & Left Clear & Right Clear & Lenses Lenses-Semi-Clear &
alert(PayName)// Frame Clear & Left Clear & Right Clear & Lenses Lenses-Semi-Clear
谢谢
最佳答案
使用三个全局正则表达式调用替换,其中第一个调用列出了应替换为任何内容的每个替代项(即删除所有“=”和“Base.jpg&”),第二个调用列出了应替换为空格('images[]'、'_' 和 '.png'),第三个解决了您的未解决问题:
var PayName = CanvasData.replace(/=|Base\.jpg&/g,'')
.replace(/images\[\]|_|\.png/g, ' ')
.replace(/^\s*|\s*&\s*$/g, '');
// => "Frame Clear & Left Clear & Right Clear & Lenses Lenses-Semi-Clear"
关于javascript - 将js替换为方括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18180479/