我正在寻找一个可以解析window.location.pathname并返回其中/的数量的正则表达式模式(并且无法提出)。
我试图保留所有路径相对于我网站的主目录。
例如:index.html有一个带有src =“js / scripts.js”的脚本标记。但是,如果我访问/episode/10/index.html,这不起作用。路径js / scripts.js不再有效。所以我的方法是编写一个简单的javascript查找并替换并返回window.location.pathname中的/ s数。将该数字减1并将所有src更改为类似../../
任何人都知道一个快速简便的方法吗?
答案 0 :(得分:3)
您可以使用我创建的此功能:
String.prototype.count = function(a) {
return this.match(new RegExp(a, "g")).length;
};
alert("Hi/how/are/you".count("/")); // Alerts 3
只需将window.location.pathname
附加到此功能:
window.location.pathname.count("/");
答案 1 :(得分:3)
如何分割'/'
并计算生成的数组元素的数量?
var slashCount = window.location.pathname.split('/').length - 1;
我无法摆脱这种解决错误问题的感觉,但是......
答案 2 :(得分:0)
适当的方法是String.prototype.match:
var slashCount = s.match(/\//g).length;