11. 文件过滤:检测文件内容
SyntaxFlow 能够直接通过正则、Xpath、JsonPath 等方式对文件内容进行过滤和审计。通过这种方式,用户可以直接定位到文件中的特定内容或结构,从而进行更精确的代码审计和安全分析。
文件过滤简介
在代码审计和安全分析中,文件过滤是一个重要的环节。通过对文件内容进行过滤,审计员可以快速定位到感兴趣的部分,从而提高审计效率和准确性。SyntaxFlow 提供了强大的文件过滤功能,支持多种过滤方式,如正则表达式、XPath 和 JSONPath 等。
语法规则
fileFilterContentStatement
: '${' fileFilterContentInput '}' lines? '.' fileFilterContentMethod (As refVariable)?
;
fileFilterContentInput: ( fileName | regexpLiteral);
fileFilterContentMethod: Identifier '(' fileFilterContentMethodParam? ')';
fileFilterContentMethodParam: fileFilterContentMethodParamItem lines? (',' lines? fileFilterContentMethodParamItem lines? )* ','? lines? ;
fileFilterContentMethodParamItem: fileFilterContentMethodParamKey? fileFilterContentMethodParamValue;
fileFilterContentMethodParamKey: Identifier ':';
fileFilterContentMethodParamValue: nameFilter | hereDoc;
fileName:nameFilter (. nameFilter)*;