java 中文件路径的 OWASP 正则表达式无法按预期工作



下面是我用来验证文件路径的 OWASP 正则表达式。 但它没有按预期工作。 请找到以下详细信息。

的正则表达式

file path = "^[a-zA-Z0-9:/\\!@#$%^&{}\[\]()_+\-=,.~'` ]{1,255}$";
Input1 = "E:HelloOneFilePath1";
Input2 = "E:HelloOne1FilePath";

文件路径的正则表达式适用于 Input1,而不适用于 Input2。原因是在 Input2 中,如果出现数字,则立即在斜杠 \ 之后,它无法通过验证。有人可以帮忙修改这个模式吗?

谢谢:)

我自己解决了这个问题。这里的java代码没有问题。我正在使用 ESAPI 库类的内置 validInput() 方法来验证文件路径。但是此方法不允许存在问题的八进制字符。

因此,我删除了此ESAPI库类仅用于文件路径验证的方法。然后我添加了一个自定义方法。

相关内容

  • 没有找到相关文章

最新更新