Nodejs检查givvenstring是否是有效的文件系统path而不实际检查文件系统
如何在nodejs中检查给定的string是否是有效的文件系统path而不实际检查文件系统。
我正在使用telegram bot nodejs api,发送文件时会检查文件是否存在。 但在第二次我使用从预览上传的telegram file id
而不是实际的文件path发送文件,所以在这种情况下,我想检查string是否是一个实际的文件path,而不是一个文件id(exp: AgADBAADuqcxG-ysuwhqkRaOdVnJI0CZXhkABL1NBSyVlK3gduoAAgI
),然后检查是否存在文件,以提高性能并避免不必要的文件系统访问。
1。
你可以检查string是否等于path.basename(string)
。 那么它不包含任何path分隔符,绝对不是另一个目录中的文件。 该function不会触及文件系统,只检查平台特定目录分隔符的string,因此适合您的性能需求。
string === path.basename(string)
2。
另一个想法:如果标识符遵循特定的格式,则为该格式创build一个正则expression式,并testing每个string的匹配并相应地继续。
/identifierregex/.test(string)