一种表达式解析和高性能运算的方法技术

技术编号:12890751 阅读:102 留言:0更新日期:2016-02-18 00:37
本发明专利技术公开了一种表达式解析和高性能运算的方法,首先按照字符的括号深度和优先级,以及表达式需要支持的操作符和运算符拆解表达式,生成逻辑树;在解析表达式时把需要分析的节点全部记录下来,加入到分析列表中,并且节点中保存该节点数据在分析列表中的位置;对数据进行填充后递归计算表达式的值。本发明专利技术将拆解过程中需要值的地方进行合并,在节点中记录数据指针;在计算表达式的值时采用指针取值。与现有技术相比,本发明专利技术的积极效果是:支持任意或者自定义的操作符和运算符;支持字符串、16进制、IP地址、整数、时间等任意或者自定义数据类型;将表达式节点作为数据指针,计算时采用指针取值,效率高。

【技术实现步骤摘要】

本专利技术涉及,用于网络流量的检测中。
技术介绍
在网络检测过程中,固定的特征的检测方式已经不能满足日新月异的攻击方式,所以应该采用灵活的配置方式是趋势。而网络流量巨大,需要性能非常高的计算方法,保证数据的准确性。常规的表达式解析只是为了识别特殊的表达式,为了实现表达式的校验,解析而已,但是表达的扩展性和高性能的运算方面不太看重。高扩展性是对用户提供更多的表达式输入空间,高性能运算是在表达式输入之后对该表达式的判断速度是否够快,这两者直接决定了用户配置自由度和产品性能。所以在多变网络流量检测时,这扩展性和高性能尤为重要。
技术实现思路
为了克服现有技术的上述缺点,本专利技术提供了。本专利技术解决其技术问题所采用的技术方案是:,包括如下步骤:步骤一、生成逻辑树:按照字符的括号深度和优先级,以及表达式需要支持的操作符和运算符拆解表达式,生成逻辑树;步骤二、在解析表达式时把需要分析的节点全部记录下来,加入到分析列表中,并且节点中保存该节点数据在分析列表中的位置;步骤三、对数据进行填充后递归计算表达式的值。进一步地,所述字符的括号深度是按该字符在第几层括号内进行确定的。进一步地,将本文档来自技高网...

【技术保护点】
一种表达式解析和高性能运算的方法,其特征在于:包括如下步骤:步骤一、生成逻辑树:按照字符的括号深度和优先级,以及表达式需要支持的操作符和运算符拆解表达式,生成逻辑树;步骤二、在解析表达式时把需要分析的节点全部记录下来,加入到分析列表中,并且节点中保存该节点数据在分析列表中的位置;步骤三、对数据进行填充后递归计算表达式的值。

【技术特征摘要】

【专利技术属性】
技术研发人员:罗鹰王伟旭林康
申请(专利权)人:成都科来软件有限公司
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1