我猜这是个简单的问题,但我只是在学习...
我有这个:
var location = (jQuery.url.attr("host"))+(jQuery.url.attr("path"));
locationClean = location.replace('/',' ');
locationArray = locationClean.split(" ");
console.log(location);
console.log(locationClean);
console.log(locationArray);这是我在Firebug中得到的:
stormink.net/discussed/the-ideas-behind-my-redesign
stormink.net discussed/the-ideas-behind-my-redesign
["stormink.net", "discussed/the-ideas-behind-my-redesign"]因此,出于某种原因,替换只发生了一次?我是否需要使用正则表达式来代替"/g“来使其重复?如果是这样,我该如何在Regex中指定'/‘呢?(我对如何使用Regex知之甚少)。
谢谢大家。
发布于 2009-08-14 21:16:35
当您使用字符串作为第一个参数时,replace方法仅替换第一个匹配项。您必须使用正则表达式来替换所有匹配项:
locationClean = location.replace(/\//g,' ');(由于斜杠字符用于分隔正则表达式文字,因此需要使用反斜杠对表达式中的斜杠进行转义。)
那么,为什么不直接拆分“/”字符呢?
发布于 2009-08-14 21:14:26
使用模式而不是字符串,它可以与"global“修饰符一起使用
locationClean = location.replace(/\//g,' ');发布于 2009-08-14 21:16:34
您可以使用/字符作为分隔符直接使用split:
var loc = location.host + location.pathname, // loc variable used for tesing
locationArray = loc.split("/");https://stackoverflow.com/questions/1280242
复制相似问题