给定文件路径的正则表达式

时间:2013-09-22 07:28:48

标签: javascript regex

这是我试过的最新段regexp ....但每次给它-1,我希望它与我的字符串str匹配....我已经开始使用基本文件路径,它应该返回如果匹配则任何大于-1的值。

var str=" c:\folder1\ ";
var n;
var y=/^[a-z]\:\\(folder1)?\\$/g;
n=str.search(y);
alert(n);

我想为特定的文件夹名称编写它...它应该接受下面给出的字符串... 示例

文件C:\ Program Files(x86)\ Webdeveloper \ dfg.dll

文件C:\ Program Files \ Webdeveloper \ dfg.exe

文件名将与某些dll或exe扩展名一起存在。

/ [c] {1} [:] {1} \ {1}(folder1){1} \ /当我使用http://regex101.com/#javascript,I传递字符串“file c:\时显示与folder1匹配folder1 \已损坏“。但它不适用于整个路径字符串。

提前致谢!

3 个答案:

答案 0 :(得分:0)

您的源字符串中有尾随空格,因此正则表达式不匹配。此外,您应该在源字符串中添加斜杠以使其可以捕获。将您的代码更改为:

var str=" c:\\folder1\\ ";
var n;
var y=/^\s*[a-z]\:\\(folder1)?\\\s*$/g;
str.match(y) // [" c:\folder1\ "]

\fescape character,表示换页。

答案 1 :(得分:0)

使用此正则表达式

^[C][:]\\[A-Z+a-z ()0-9\\]+[.][a-z]+$

Demo/Testing

答案 2 :(得分:0)

试试这个:

在每个'\\'中,一个\是转义字符,其他\是字面意思。

var str="c:\folder1\abc.txt";
var n;
var y=/^(c:\\folder1\\abc\.txt)$/;
n=str.search(y);
alert(n);