Java:正则表达式。创建reg以验证文件路径

时间:2013-11-05 08:51:06

标签: java regex

我需要创建可以验证文件路径的正则表达式。它应该批准像:

这样的字符串
c:\
c:\dir1\file.txt
c:\dir1\dir2\file.txt

等等。 我试图创造它。结果:

(c|C):(\\\w{0,8})*(\.\w{1,3})?

gskinner中一切正常,但是当我在Java中编译此模式时,以前的所有行都没有经过测试。

Java代码:

p = Pattern.compile("(c|C):(\\\w{0,8})*");
m = p.matcher(arguments);
result = m.matches();

1 个答案:

答案 0 :(得分:0)

我刚编辑了您的示例代码:

String regex = "[cC]:(?:\\\\\\w{0,8})*(?:[.]\\w{1,3})?"

正则表达式\\匹配单个反斜杠,因为\是正则表达式中的特殊字符,因此必须进行转义,但是一旦我们将它放在引号中,又将其转换为{{1我们需要转义每个反斜杠,产生String。我们需要"\\\\"的额外两个\\