gpt4 book ai didi

javascript - 语法错误: unterminated parenthetical for validating the local file path

转载 作者:行者123 更新时间:2023-12-01 02:21:06 26 4
gpt4 key购买 nike

我必须验证以下格式的本地文件夹路径:..\sentinel\log。

我有 C:\sentinel\log 的旧正则表达式 (/[\w]:\.*/)) 且有效。我需要接受这条路径。

我有来自 regexplibrary 的以下表达式

var pathRE = new RegExp("/^((../|[a-zA-Z0-9_/-\])*.[a-zA-Z0-9])"); Error : SyntaxError: unterminated parenthetical

当我执行时抛出此错误

我附上我尝试过的代码

function checkFolderpath(path) {
try {
//var pathRE = new RegExp(/[\w]:\\.*/);
var pathRE = new RegExp("/^((\.\./|[a-zA-Z0-9_/\-\\])*\.[a-zA-Z0-9])");
if (pathRE.test(path)) {
$("#spanloggererror").html("");
return true;
}
else {
$("#spanloggererror").html(resx_Invalid_Loggerpath);
valtemp = 1;
}
return false;
}
catch (err) {
alert(err.Message);
}

请建议我如何解决该问题。

编辑:

路径值:..\Sentinel\log

最佳答案

你的正则表达式应该这样构造:

var pathRE = /^((..\/|[a-zA-Z0-9_/-\\])*.[a-zA-Z0-9])/;

唯一真正需要使用 RegExp 构造函数的时候是当您动态地从单独的片段构建正则表达式时。使用 native 正则表达式语法时,必须小心在表达式 (/) 中引用正斜杠字符。您不必在 [ ] 组内引用它们,但您确实需要使用双反斜杠。

该正则表达式不会匹配 ..\what\ever 因为它只在开头查找正斜杠。它也不会匹配长度超过两个字符的终端文件名。我认为更好的做法是:

var pathRE = /^\.\.(?:\\[A-Za-z0-9_-]+)+/;

对您期望的文件名字符进行适当的更改。

关于javascript - 语法错误: unterminated parenthetical for validating the local file path,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19030397/

26 4 0
文章推荐: jquery - 通过最后两个字符定位元素
文章推荐: python - pip uninstall/conda删除后无法卸载tensorflow
文章推荐: python - 按两列分组并累积总和,回溯窗口为 6 个月的日期
文章推荐: python - Scrapy 抓取未知数量
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com