JavaScript的replace()方法无效

3

我正在处理JavaScript代码,遇到了一些replace函数的问题。

以下是我的代码:

var jpgPath ="../Publish/Pdf/Publish_27Jul2011_04-47-09_PM/adfm201000135.jpg@../Publish
/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001352.jpg@../Publish
/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001353.jpg@../Publish
/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001354.jpg@../Publish       
/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001355.jpg@../Publish    
/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001356.jpg@../Publish   
/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001357.jpg@../Publish
/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001358.jpg@../Publish
/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001359.jpg@../Publish  
/Pdf/Publish_27Jul2011_04-47-09_PM/adfm20100013510.jpg@../Publish
/Pdf/Publish_27Jul2011_04-47-09_PM/adfm20100013511.jpg@../Publish
/Pdf/Publish_27Jul2011_04-47-09_PM/adfm20100013512.jpg";

jpgPath = jpgPath.replace("..", "../..");

但它没有用"../.."替换所有的"..", 它只替换了第一个匹配项,之后忽略其他匹配项。

5个回答

7

使用全局标志作为第一个参数传递正则表达式

jpgPath = jpgPath.replace(/\.\./g, "../..");

0

请运行 jpgPath = jpgPath.replace(/\.\./g, "../.."); 代替。


0

请尝试以下操作:

jpgPath = jpgPath.replace(/../g, ”../..”);

0

为此,您需要使用正则表达式和 g(全局)运算符:

// because . is a special character in regex, you need to escape it
jpgPath = jpgPath.replace(/\.\./g, "../..");

0

试试这个。

 var jpgPath ="../Publish/Pdf/Publish_27Jul2011_04-47-09_PM/adfm201000135.jpg@../Publish/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001352.jpg@../Publish/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001353.jpg@../Publish/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001354.jpg@../Publish/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001355.jpg@../Publish/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001356.jpg@../Publish/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001357.jpg@../Publish/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001358.jpg@../Publish/Pdf/Publish_27Jul2011_04-47-09_PM/adfm2010001359.jpg@../Publish/Pdf/Publish_27Jul2011_04-47-09_PM/adfm20100013510.jpg@../Publish/Pdf/Publish_27Jul2011_04-47-09_PM/adfm20100013511.jpg@../Publish/Pdf/Publish_27Jul2011_04-47-09_PM/adfm20100013512.jpg";

jpgPath = jpgPath.replace(/\.\./g, "../..");

console.log(jpgPath );

http://jsfiddle.net/t8Wp8/


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接