使用JavaScript确定文件是否存在?
我有一个由JavaScript生成的文件夹/文件树,其中文件夹和文件都有复选框输入以及与之关联的路径,如:使用JavaScript确定文件是否存在?,javascript,Javascript,我有一个由JavaScript生成的文件夹/文件树,其中文件夹和文件都有复选框输入以及与之关联的路径,如: /var/www/site/user/folder7/ or /var/www/site/user/folder7/file.txt or /var/www/site/user/folder7/file.? (? being any file extension) 对于这些路径,我只需要 /var/www/site/user/folder7 我知道,通常要删除文件名,会使用以下内容:
/var/www/site/user/folder7/ or
/var/www/site/user/folder7/file.txt or
/var/www/site/user/folder7/file.? (? being any file extension)
对于这些路径,我只需要
/var/www/site/user/folder7
我知道,通常要删除文件名,会使用以下内容:
var full_path = node.context.nextElementSibling.value;
var folder_target_path = full_path.substring(0, full_path.lastIndexOf("/"));
然而,这一回报要么是:
/var/www/site/user/folder7 or
/var/www/site/user
如果我可以使用一些正则表达式来查找,我可以使用lastIndexOf()方法。?然后直到最后一个“/”;然而,我对javascript还相当陌生,从未在其中使用过正则表达式
您能建议一种有效的方法,在所有情况下只获取文件夹而不获取文件路径吗
问候,,
Steve以下是关于JavaScript和正则表达式的W3教程:
var folder\u target\u path=full\u path。替换(/\/[^\/]*$/,“”)
将删除最后一个/及其后面的任何内容。我认为,通过从字符串创建Regexp对象,可以避免必须转义模式中的/。要完全实现这一点,我需要使用以下方法:
var full_path = node.context.nextElementSibling.value;
var folder_target_path;
var pathRE = /\./;
if (full_path.match(pathRE)){
folder_target_path = full_path.replace(/\/[^\/]*$/, '');
} else {
folder_target_path = full_path;
}
这与包含的路径匹配。(指定文件扩展名开始的期间),然后删除具有完整路径的文件名。替换(/\/[^\/]*$/,'');否则不要修改完整路径
谢谢大家
问候,,
史蒂夫