我希望有人可以帮助我解决一些问题。
我将 OWASP ESAPI 2.1.0 与 JavaEE 一起使用,以帮助我验证 Web 应用程序中的某些条目。在某些时候,我需要验证 Windows 文件路径,因此我在“validation.properties”中添加了一个新的属性条目,如下所示:
Validator.PathFile=^([a-zA-Z]:)?(\\\\[\\w. -]+)+$
例如,当我尝试通过 ESAPI 验证像“C:\TEMP\file.txt”这样的字符串时,我得到一个 ValidationException:
ESAPI.validator().getValidInput("PathFile", "C:\\TEMP\\file.txt", "PathFile", 100, false);
或者,我还尝试了java.util.regex.Pattern类来测试具有相同字符串示例的相同正则表达式,它工作正常:
Pattern.matches("^([a-zA-Z]:)?(\\\\[\\w. -]+)+$", "C:\\TEMP\\file.txt")
我必须说我在“validation.properties”中添加了其他正则表达式并且工作正常。这个怎么这么难?谁能帮我解决这个问题?