CN108319589B - 参数字符串处理方法、装置、计算机可读存储介质和设备 - Google Patents

参数字符串处理方法、装置、计算机可读存储介质和设备 Download PDF

Info

Publication number
CN108319589B
CN108319589B CN201810207716.7A CN201810207716A CN108319589B CN 108319589 B CN108319589 B CN 108319589B CN 201810207716 A CN201810207716 A CN 201810207716A CN 108319589 B CN108319589 B CN 108319589B
Authority
CN
China
Prior art keywords
parameter
delimiter
key
scan
separator
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810207716.7A
Other languages
English (en)
Other versions
CN108319589A (zh
Inventor
钟明恒
王宗友
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810207716.7A priority Critical patent/CN108319589B/zh
Publication of CN108319589A publication Critical patent/CN108319589A/zh
Application granted granted Critical
Publication of CN108319589B publication Critical patent/CN108319589B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking

Abstract

本申请涉及一种参数字符串处理方法、装置、计算机可读存储介质和计算机设备,所述方法包括:获取资源标识符的参数字符串;所述参数字符串包括参数字段和用于分隔不同参数字段的分隔符;按所述参数字符串的正序扫描所述参数字符串;当扫描到分隔符时,获取当次扫描的分隔符和前次扫描的分隔符;确定当次扫描的分隔符和前次扫描的分隔符间的层次关系;根据当次扫描的分隔符和前次扫描的分隔符的组合、以及所述层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型。本申请提供的方案可以实现提高对参数字符串中参数字段的字段类型进行识别的效率。

Description

参数字符串处理方法、装置、计算机可读存储介质和设备
技术领域
本申请涉及计算机技术领域,特别是涉及一种参数字符串处理方法、装置、计算机可读存储介质和设备。
背景技术
通常,用户在请求获取互联网资源时会涉及到参数字符串。比如,近年来线上交易逐渐普及,许多用户在请求线上交易所需的HTML页面时,提交的HTML请求中就会包括相应的参数字符串,该参数字符串通常包括用户信息,比如身份证号码、手机号码、卡信息、账号和密码等。
为了能够对用户的请求进一步处理,比如,对请求中涉及敏感信息的参数值进行屏蔽处理,或对请求中提交的参数值进行验证等,需要对请求涉及的参数字符串进行识别。
目前,对资源标识符的参数字符串进行识别时,通常是通过递归算法扫描整个参数字符串,在参数字符串存在多嵌套层次时,运行效率会随着嵌套层次的增加而大幅下降,导致对参数字符串进行识别的效率低下。
发明内容
基于此,有必要针对现有的对参数字符串进行识别的方式效率低下的技术问题,提供一种参数字符串处理方法、装置、计算机可读存储介质和设备。
一种参数字符串处理方法,包括:
获取资源标识符的参数字符串;所述参数字符串包括参数字段和用于分隔不同参数字段的分隔符;
按所述参数字符串的正序扫描所述参数字符串;
当扫描到分隔符时,获取当次扫描的分隔符和前次扫描的分隔符;
确定当次扫描的分隔符和前次扫描的分隔符间的层次关系;
根据当次扫描的分隔符和前次扫描的分隔符的组合、以及所述层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型。
一种参数字符串处理装置,包括:
参数字符串获取模块,用于获取资源标识符的参数字符串;所述参数字符串包括参数字段和用于分隔不同参数字段的分隔符;
扫描模块,用于按所述参数字符串的正序扫描所述参数字符串;
分隔符获取模块,用于当扫描到分隔符时,获取当次扫描的分隔符和前次扫描的分隔符;
层次关系确定模块,用于确定当次扫描的分隔符和前次扫描的分隔符间的层次关系;
字段类型识别模块,用于根据当次扫描的分隔符和前次扫描的分隔符的组合、以及所述层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述参数字符串处理方法的步骤。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述参数字符串处理方法的步骤。
上述参数字符串处理方法、装置、计算机可读存储介质和设备,按照参数字符串的正序进行扫描,依次得到参数字符串中的参数字段和分隔符,当扫描到分隔符时,基于当次扫描的分隔符和前次扫描的分隔符的层次关系以及形成的组合就能直接识别出两个分隔符间参数字段的字段类型,识别的效率与参数字符串中分隔符的嵌套层次无关,对于包含任意嵌套层次的分隔符的参数字符串,能够实现只需一次扫描整个参数字符串就能确定该参数字符串中各个参数字段的字段类型,大大提高了对参数字符串进行识别的效率。
附图说明
图1为一个实施例中参数字符串处理方法的应用环境图;
图2为一个实施例中参数字符串处理方法的流程示意图;
图3为一个实施例中将对参数字符串进行扫描得到分隔符保存至栈中的示意图;
图4为另一个实施例中参数字符串处理方法的流程示意图;
图5为一个实施例中通过多维数组将识别出的包含前缀的参数键与预设参数键进行匹配的示意图;
图6为一个具体的实施例中参数字符串处理方法的流程示意图;
图7为一个实施例中参数字符串处理装置的结构框图;
图8为另一个实施例中参数字符串处理装置的结构框图;
图9为又一个实施例中参数字符串处理装置的结构框图;
图10为再一个实施例中参数字符串处理装置的结构框图;
图11为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中参数字符串处理方法的应用环境图。参照图1,该参数字符串处理方法应用于参数字符串处理系统。该参数字符串处理系统包括终端110和服务器120。终端110和服务器120通过网络连接。终端110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
如图2所示,在一个实施例中,提供了一种参数字符串处理方法。本实施例主要以该方法应用于上述图1中的服务器120来举例说明。参照图2,该参数字符串处理方法具体包括如下步骤:
S202,获取资源标识符的参数字符串;所述参数字符串包括参数字段和用于分隔不同参数字段的分隔符。
其中,资源标识符(Uniform Resource Identifier,URI)用于唯一地标识互联网上资源的名称的字符串。资源标识符包括统一资源定位符(Uniform Resource Locator,URL)。资源标识符不仅包含资源的名称,还包含参数字符串。参数字符串是指定了资源标识符所标识的资源对应的获取方式和获取位置的字符串。比如,终端向服务器发出的某一URL登录请求中的URL中的参数字符串为:
Uin=123456&name=Lilei&passwd=abc123&cre_id=654321&bank_id=456789&desc=attach%3d123%26addr%3d456&uid=789。
参数字符串包括参数字段和用于分隔不同参数字段的分隔符。其中,参数字段是参数字符串中的字符串角色为参数的字段,参数字段的字段类型包括参数键(Key)和参数值(Value)。参数键和相应的参数值构成键值对(Key=Value)。比如,上述URL登录请求中的Uin=123456、name=Lilei和passwd=abc123等都是键值对。其中的Uin、name和passwd即为参数键,而相应的值为参数值。分隔符是参数字符串中用于分隔不同参数字段的分隔符。分隔符包括键值连接符和键值对分隔符,分别为“=”和“&”。其中,键值连接符用于分隔参数字段中的参数键和参数值,键值对分隔符用于分隔参数字段中的键值对,比如,Uin=123456&name=Lilei&passwd=abc123。
在一个实施例中,服务器可在获取到资源标识符后,按照解析协议从资源标识符中的预设位置处提取参数字符串,以对提取的参数字符串进行扫描。
在一个实施例中,参数字符串为嵌套的字符串。在嵌套的参数字符串中,参数字段中的某些参数值不是单独的一个值,而是一个字符串或键值对。比如,在没有嵌套的参数字符串中,Key1=Value1。而在有嵌套的参数字符串中,Key2=Value2,其中的Value2本身是一个字符串或键值对,比如,Value2为name1=Mary&passwd1=12345,在这种情况下,Value2中出现的分隔符会被转义成相应的ASCII码,即以转义字符“%”加上相应的ASCII值来表示。比如,“=”对应的ASCII值为3d,转义后的ASCII码为“%3d”,“&”对应的ASCII值为26,转义后的ASCII码为“%26”,“%”对应的ASCII值为25,转义后的ASCII码为“%25”等等,上述的Key2=Value2在参数字符串中就表示为:Key2=name1%3dMary%26passwd1%3d12345。
S204,按所述参数字符串的正序扫描所述参数字符串。
具体地,服务器可在获取到参数字符串后,按照从左至右的顺序对获取的参数字符串进行扫描。
在一个实施例中,服务器可将正序扫描参数字符串得到的分隔符依次保存至栈中。具体地,服务器可采用匹配的方式对扫描得到的每个字符进行匹配,若匹配到字符为分隔符,就按照扫描的顺序将分隔符依次存入栈中。扫描到的首个分隔符存入栈底,当次扫描到的分隔符存入栈顶。
在一个实施例中,服务器可对获取的嵌套的参数字符串中的转义字符串进行反转义处理,采用匹配的方式对反转义处理后的参数字符串按照正序进行扫描,并将扫描得到的分隔符依次入栈保存。
在一个实施例中,服务器可将正序扫描所述参数字符串得到的参数字段和分隔符依次保存至栈中。可以理解,服务器扫描到的首个参数字段为参数键。
S206,当扫描到分隔符时,获取当次扫描的分隔符和前次扫描的分隔符。
具体地,服务器在按照参数字符串的正序扫描的过程中,会扫描到参数字段和分隔符,当扫描到分隔符时,就获取当次扫描的分隔符和前次扫描的分隔符,以记录整个扫描过程中每一个当次扫描的分隔符和前次扫描的分隔符所构成的组合。
在一个实施例中,服务器可将正序扫描参数字符串得到的分隔符依次保存至栈中,当扫描到分隔符时,就获取当次扫描的分隔符,并从栈顶中读取前次扫描的分隔符。这样,服务器就可以获取到当次扫描的分隔符和前次扫描的分隔符所构成的组合。
在一个实施例中,服务器可在将正序扫描参数字符串得到的参数字段和分隔符依次保存至栈中后,在获取到当次扫描的分隔符时,就从栈中读取前次扫描到的分隔符。
在一个实施例中,服务器可将正序扫描参数字符串得到的分隔符依次保存至栈中,当扫描到分隔符对应的转义字符串时,就获取该转义字符串对应的分隔符,并从栈顶中读取前次扫描的分隔符。这样,服务器就可以获取到当次扫描的转义字符串对应的分隔符和前次扫描的分隔符所构成的组合。
进一步地,服务器可在获取到上述组合之后,将当次扫描的分隔符或当次扫描到的转义字符串对应的分隔符存入栈中,栈顶的元素即为当次扫描的分隔符,然后继续对参数字符串中的下一个字符进行扫描,以此类推,直至将参数字符串中的分隔符扫描完毕,并获取到每一个当次扫描的分隔符和前次扫描的分隔符所构成的组合。
以参数字符串为name=Lilei&desc=attach%3d123%26addr%3d456&uid=789来举例说明,如图3所示,为一个实施例中将对参数字符串进行扫描得到分隔符保存至栈中的示意图。服务器对该字符串按照正序进行扫描,扫描到分隔符“=”,将其入栈保存至栈底302;继续扫描,得到分隔符“&”,从栈顶(也就是目前的栈底302)读取前次扫描的分隔符“=”,得到相应的组合后将当次扫描到的分隔符“&”存入栈顶304;继续扫描,得到分隔符“=”,从栈顶304读取前次扫描的分隔符“&”,得到相应的组合后将当次扫描到的分隔符“=”存入栈顶306;继续扫描,得到分隔符“=”对应的转义字符串“%3d”,同样地,从栈顶306读取前次扫描的分隔符“=”,得到相应的组合后将当次扫描到的转义字符串转义后的分隔符“=”存入栈顶308;以此类推,直至扫描至参数字符串的最后一个字符,得到栈底302至栈顶316存入的分隔符依次为“=&==&=&=”。
S208,确定当次扫描的分隔符和前次扫描的分隔符间的层次关系。
其中,当次扫描的分隔符和前次扫描的分隔符间的层次关系与各自被转义的次数有关。比如,在参数字符串中,当次扫描到字符串%25%3d时,需经过两次转义得到分隔符“=”,而前次扫描到%3d时,只需经过一次转义得到分隔符“=”,那么就相应的层次关系就为当次扫描的分隔符比前次扫描的分隔符多一层。可以理解,参数字符串中分隔符的嵌套层次与参数字符串中的参数值是否为嵌套的字符串是相关的。
在一个实施例中,服务器可在获取到当次扫描的分隔符和前次扫描的分隔符后,得到相应的组合并保存该组合对应的层次关系。具体地,服务器在按照正序扫描参数字符串的过程,每一次获取到扫描的分隔符时,都会保存扫描到的分隔符的层次,并根据获取的前次扫描的分隔符的层次,将当次扫描的分隔符与前次扫描的分割符的层次关系进行保存。
S210,根据当次扫描的分隔符和前次扫描的分隔符的组合、以及层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型。
其中,参数字符串中参数字段的字段类型包括参数键和参数值。具体地,服务器在获取到当次扫描的分隔符和前次扫描的分隔所构成的组合之后,以及当次扫描的分隔符合前次扫描的分隔符间的层次关系,就可以直接确定这两个分隔符间参数字段的字段类型,即参数键或参数值中的一种。
在一个实施例中,服务器在识别到参数字符串中两个分隔符间的参数字段为预设的用于验证的参数键时,提取与该参数键对应的参数值,对提取的参数值进行验证,以对包含该参数字符串的请求进行验证。
在一个具体的应用场景中,线上支付系统在面对海量的支付请求时,为了能够既保证支付安全性,又要能快速地响应请求,就需要对支付请求中涉及到用户隐私信息的参数值都要进行屏蔽处理。采用上述任一个实施例中的对参数字符串进行扫描来识别出参数字段的字段类型的方法,能够识别出任意嵌套层次的参数字符串中的参数值,从而可以从中筛选出涉及用户隐私信息的参数值并对其进行屏蔽处理。
上述参数字符串处理方法,按照参数字符串的正序进行扫描,依次得到参数字符串中的参数字段和分隔符,当扫描到分隔符时,基于当次扫描的分隔符和前次扫描的分隔符的层次关系以及形成的组合就能直接识别出两个分隔符间参数字段的字段类型,识别的效率与参数字符串中分隔符的嵌套层次无关,对于包含任意嵌套层次的分隔符的参数字符串,能够实现只需一次扫描整个参数字符串就能确定该参数字符串中各个参数字段的字段类型,大大提高了对参数字符串进行识别的效率。
在一个实施例中,步骤S208具体包括以下步骤:在当次扫描的分隔符和前次扫描的分隔符分别是键值连接符和键值对分隔符中的不同种时,确定当次扫描的分隔符和前次扫描的分隔符属于同一层;或,在当次扫描的分隔符是解析转义字符串得到的分隔符时,确定当次扫描的分隔符和前次扫描的分隔符属于不同层。
具体地,服务器可根据当次扫描的分隔符和前次扫描的分隔符所构成的组合来判断是否属于同一层。
在一个实施例中,当服务器在扫描参数字符串的过程中,若当次扫描的分隔符和前次扫描的分隔符都是不需要转义就直接匹配到的,那么就可以确定当次扫描的分隔符和前次扫描的分隔符间的层次关系为属于同一层。比如,当次扫描的分隔符是键值连接符“=”、且前次扫描到的分隔符是键值对分隔符“&”,或者,当次扫描的分隔符是键值对分隔符“&”、且前次扫描的分隔符是键值连接符“=”,那么就可以确定当次扫描的分隔符和前次扫描的分隔符属于同一层。
在一个实施例中,当服务器在扫描参数字符串的过程中,若当次扫描的分隔符是解析转义字符串得到的分隔符、且前次扫描到的分隔符是没有经过解析参数字符串中的转义字符串直接确定的分隔符,那么就可以确定当次扫描的分隔符和前次扫描的分隔符间的层次关系为属于不同层。比如,当次扫描的分隔符是通过解析扫描的参数字符串中的转义字符串%3d得到的键值连接符“=”,且前次扫描的分隔符是键值对分隔符“&”。
在一个实施例中,若当次扫描的分隔符是没有经过解析转义字符串直接确定的分隔符、且前次扫描的分隔符是解析转义字符串得到的分隔符,那么就可以确定当次扫描的分隔符和前次扫描的分隔符间的层次关系为属于不同层。比如,当次扫描的分隔符是键值对分隔符“&”、且前次扫描的分隔符是解析参数字符串中的转义字符串%3d得到的键值连接符“=”,或者,当次扫描的分隔符是键值对分隔符“&”、且前次扫描的分隔符是解析参数字符串中的转义字符串%253d得到的键值连接符“=”,那么就可以确定当次扫描的分隔符和前次扫描的分隔符属于不同层。
在一个实施例中,服务器可根据转义字符串中的转义符“%”的数量来确定该转义字符串需要被进行反转义处理的次数,从而可以确定该转义字符串的层次。
在上述实施例中,通过在扫描参数字符串的过程中,结合当次扫描的分隔符和前次扫描的分隔符所构成的组合,以及扫描到的分隔符是否被转义,可确定出当次扫描的分隔符和前次扫描的分隔符间的层次关系。
在一个实施例中,在当次扫描的分隔符是解析转义字符串得到的分隔符时,确定当次扫描的分隔符和前次扫描的分隔符属于不同层的步骤具体包括:在当次扫描的分隔符和前次扫描的分隔符均是解析转义字符串得到的键值连接符、且当次扫描的分隔符比前次扫描的分隔符多一层转义层次时,确定当次扫描的分隔符比前次扫描的分隔符多一层;或,在当次扫描的分隔符和前次扫描的分隔符均是解析转义字符串得到的分隔符、且当次扫描的分隔符比前次扫描的分隔符少一层转义层次时,确定当次扫描的分隔符比前次扫描的分隔符少一层。
具体地,服务器在对参数字符串进行扫描的过程中,若当次扫描的分隔符和前次扫描的分隔符都是需要对参数字符串中的转义字符串进行解析得到的,那么可根据在解析时进行转反转义处理的次数来确定各自对应的层次,从而得到当次扫描的分隔符与前次扫描的分隔符间的层次关系。
在一个实施例中,服务器在扫描参数字符串的过程中,在当次扫描的分隔符和前次扫描的分隔符均是解析转义字符串得到的键值连接符、且当次扫描的分隔符比前次扫描的分隔符多一层转义层次时,确定当次扫描的分隔符比前次扫描的分隔符多一层。比如,当次扫描的分隔符是对参数字符串中的%25%3d进行转义得到的键值连接符“=”、且前次扫描的分隔符是对参数字符串中的%3d进行转义得到的键值连接符“=”,那么就确定当次扫描的分隔符比前次扫描的分隔符多一层。
在一个实施例中,服务器在扫描参数字符串的过程中,在当次扫描的分隔符和前次扫描的分隔符均是解析转义字符串得到的分隔符、且当次扫描的分隔符比前次扫描的分隔符少一层转义层次时,确定当次扫描的分隔符比前次扫描的分隔符少一层。比如,当次扫描的分隔符是对参数字符串中的转义字符串%25%3d进行解析得到的键值连接符“=”、且前次扫描的分隔符是对参数字符串中的转义字符串%26进行解析得到键值连接符“&”,则就确定当次扫描的分隔符比前次扫描的分隔符少一层。
在上述实施例中,对于当次扫描到的分隔符和前次扫描的分隔符都是需要经过解析转义字符串得到的分隔符,可以根据各自被反转义处理的次数来确定当次扫描的分隔符和前次扫描的分隔符间的层次关系。
在一个实施例中,步骤S210具体包括:在当次扫描的分隔符是键值连接符时,且当前次扫描的分隔符是键值对分隔符时,且在当次扫描的分隔符和前次扫描的分隔符属于同一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数键。
具体地,服务器获取当次扫描的分隔符和前次扫描的分隔符间的层次关系为同一层,并且当次扫描的分隔符是键值连接符“=”、前次扫描的分隔符是键值对分隔符“&”,就可以确定这两个分隔符间的参数字段的字段类型为参数键,即,该参数字段Key在参数字符串中的特征为“&Key=”。
在一个实施例中,步骤S210具体包括:在当次扫描的分隔符是键值连接符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符比前次扫描的分隔符多一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数键。
具体地,服务器获取当次扫描的分隔符比前次扫描的分隔符多一层,并且当次扫描的分隔符和前次扫描的分隔符都是键值连接符“=”,就可以确定这两个分隔符间的参数字段的字段类型为参数键,即,该参数字段Key在参数字符串中的特征为“=Key%3d”或“%3dKey%25%3d”。
在一个实施例中,步骤S210具体包括:在当次扫描的分隔符是键值对分隔符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符和前次扫描的分隔符属于同一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数值。
具体地,服务器获取当次扫描的分隔符和前次扫描的分隔符间的层次关系是同一层,并且当次扫描的分隔符是键值对分隔符“&”、前次扫描的分隔符是键值连接符“=”,就可以确定这两个分隔符间的参数字段的字段类型为参数值,即,该参数字段Value在参数字符串中的特征为“=Value&”。
在一个实施例中,步骤S210具体包括:在当次扫描的分隔符是键值对分隔符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符比前次扫描的分隔符少一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数值。
具体地,服务器获取当次扫描的分隔符比前次扫描的分隔符少一层,并且当次扫描的分隔符是键值对分隔符“&”、前次扫描的分隔符是键值连接符“=”,那么就可以确定这两个分隔符间的参数字段的字段类型为参数值,即,该参数字段Value在参数字符串中的特征为“%3dValue&”或“%253dValue%26”。
在一个实施例中,服务器获取当次扫描的分隔符比前次扫描的分隔符少两层,并且当次扫描的分隔符是键值对分隔符“&”、前次扫描的分隔符是键值连接符“=”,就可以确定这两个分隔符间的参数字段的字段类型为参数值,即,该参数字段Value在参数字符串中的特征为“%253dValue&”。
在上述实施例中,通过服务器获取的当次扫描的分隔符和前次扫描的分隔符间的层次关系、所构成的组合符合预设的特征的情况下,就能直接确定这两个分隔符间参数字段的字段类型是参数键或参数值,无需多次对该参数字符串进行多次扫描,提高了识别的效率。
如图4所示,在一个实施例中,参数字符串处理方法还包括以下步骤:
S402,当识别到参数字段是参数键时,查找与参数键匹配的预设参数键。
其中,预设参数键是预先配置的与各敏感信息相应的字符串。比如,若敏感信息为身份证信息,则相应的预设参数键为IDnumber或idnumber等,若敏感信息为密码,则相应的预设参数键为password或passwd或pw等等。
具体地,服务器可预先获取敏感信息相应的预设参数键,当识别出参数字符串中的参数字段是参数键时,就从获取的预设参数键中查找是否存在与该参数键匹配的预设参数键。
S404,在查找到参数键匹配的预设参数键时,则将参数键对应的参数值进行屏蔽处理。
具体地,服务器在从预设参数键中查找到与识别的参数键匹配的参数键时,就对参数字符串中与该参数键对应的参数值进行屏蔽处理。比如,服务器可通过掩码代替该参数键对应的参数值中的部分字段,还可代替整个参数值;或者,服务器还可利用特定的字符来替换该参数键对应的参数值。
在一个具体的应用场景中,用户通过终端向支付系统提交支付请求,支付请求携带的参数字符串中涉及到用户敏感信息,比如用户的身份证号码或账号密码等,服务器在接收到该支付请求时,按照监管要求,涉及到用户敏感信息的信息不能以明文形式出现于任何地方,因此,在服务器对接收的支付请求进行处理的过程中,需要识别出支付请求中的参数字符串所包含的用户敏感信息。服务器通过对支付请求中的参数字符串按照正序进行扫描,获取当次扫描的分隔符和前次扫描的分隔符,以及当次扫描的分隔符和前次扫描的分隔符间的层次关系,根据层次关系和当次扫描的分隔符和前次扫描的分隔符所构成的组合,确定当次扫描的分隔符和前次扫描的分隔符间的参数字段是否为参数键,在确定为参数键后,将该参数键与预设参数键进行匹配,若匹配成功,就将参数字符串中与该参数键对应的参数值进行屏蔽处理,对于这个支付请求,只需要扫描一次参数字符串就能查找出所有的涉及用户敏感信息的参数键,提高了整体运行效率,在支付系统面临海量支付请求的情况下,优势更为明显。
在本实施例中,通过预先配置预设参数键,并将从参数字符串中识别出的参数键与预设参数键进行匹配,以在确定为预设参数键时对于该参数键对应的参数值进行屏蔽处理。
在一个实施例中,在查找到参数键匹配的预设参数键时,则将参数键对应的参数值进行屏蔽处理具体包括以下步骤:在查找到参数键匹配的预设参数键时,则继续扫描以扫描到下一个与参数键同一层次的参数键;确定匹配的参数键和与匹配的参数键同一层次的参数键之间的参数值;将确定的参数值替换为相应的掩码。
其中,参数键的层次与该参数键后的键值连接符的层次是相对应的。服务器在获取到当次扫描的分隔符是键值连接符以及该键值连接符的层次时,就可以确定该键值连接符之前的参数键对应的层次。
以参数字符串为name=Lilei&desc=attach%3d123%26addr%3d456&uid=789来举例说明,假设预先配置的预设参数键有desc。服务器在对该参数字符串进行扫描时,先默认扫描到的参数字符串的首个参数字段“name”的字段类型为参数键;继续扫描,当次扫描到“=”,未经过转义,假设其对应的层次为1,那么相应的“name”的层次也为1;继续扫描,当次扫描到“LiLei”;继续扫描,当次扫描到“&”,未经过转义,层次为1,根据前次扫描的层次为1的“=”可确定这两个分隔符间的参数字段“LiLei”为参数值;继续扫描,当次扫描到“desc”;继续扫描,当次扫描到“=”,未经过转义,层次为1,根据前次扫描的层次为1的“&”可确定这两个分隔符间的参数字段“desc”为参数键,即,“name”为扫描到的首个参数键,“desc”为扫描到的第二个同层次的参数键,且经过匹配,“name”不是预设参数键,就无需对这两个参数键之间的参数值“LiLei”进行屏蔽处理。以此类推,服务器扫描到的下一个与“desc”同层次的参数键为“uid”,且经过匹配,“desc”为预设参数键,需对这两个参数键之间的参数值“attach%3d123%26addr%3d456”进行屏蔽处理。可以理解,该参数值中还包含多层次的参数键和参数值,服务器可将两个参数键之间的参数值作为一个整体来进行屏蔽处理,还可仅对该参数值中多层次的参数值进行屏蔽处理,例如,服务器对该参数字符串进行扫描后作屏蔽处理的字符串为:“name=Lilei&desc=attach%3d***%26addr%3d***&uid=789”。
在一个实施例中,若服务器从预设参数键中查找到从参数字符串中识别出的参数键、且该参数键为参数字符串中最末的参数键,服务器就可对参数字符串中扫描到的最末的参数值直接进行屏蔽处理。比如,服务器可将该最末的参数值替换为相应的掩码。
在上述实施例中,通过获取扫描到的参数键的层次,以确定与该参数键对应的参数值,从而能够在该参数键为预设参数键时对相应的参数值进行屏蔽处理。
在一个实施例中,查找与参数键匹配的预设参数键的步骤具体包括:提取参数键的前缀;确定与前缀对应的预设参数键子集;预设参数键子集中的预设参数键均具有前缀;从预设参数键子集中查找与参数键匹配的预设参数键。
其中,参数键的前缀是参数键的前预设数量的字符。比如,参数键的前缀是参数键的前1个字符或前2个字符或前3个字符等。预设参数键子集是包含了相同前缀的预设参数键构成的集合。即,所有预先配置的预设参数键通过前缀划分为多个预设参数键子集。比如,预先配置的预设参数键有name,nand,nash等等、且前缀为na,那么这三个预设参数键属于同一个预设参数键子集。可以理解,前缀所包含的字符数量越多,预设参数键子集中所包含的预设参数键就越少,预设参数键就会被划分的更分散,预设参数键子集的数量越多;相反地,前缀所包含的字符数量越少,预设参数键子集中所包含的预设参数键就越多,预设参数键就会被划分的更集中,预设键子集的数量就越少。
具体地,服务器在扫描参数字符串的过程中,识别出当次扫描的参数字段的字段类型为参数键时,就提取该参数键的前缀,根据提取出的前缀确定该参数键所对应的预设参数键子集,从确定的预设参数键子集中去查找是否存在与该参数键匹配的预设参数键,从而能够确定识别出的该参数键是否为预设参数键。
在本实施例中,通过将预设参数键按前缀划分到不同的预设参数键子集,这样就可以在获取到从参数字符串中识别出的参数键时,按照从该参数键中提取的前缀对应的预设参数键子集进行匹配,避免了将识别出的参数键与所有的预设参数键进行匹配,大大提高了匹配的效率。
在一个实施例中,确定与前缀对应的预设参数键子集具体包括以下步骤:提取前缀的每个单字符;按照每个单字符在前缀中的排列顺序,分别确定每个单字符对应于多维数组中相应维度的元素位置;按照确定的元素位置,从多维数组中用于存储地址的维度读取首地址和参数键数量;将从首地址起存储的参数键数量的预设参数键确定为与前缀对应的预设参数键子集。
举例说明,如图5所示,为一个实施例中通过多维数组将识别出的包含前缀的参数键与预设参数键进行匹配的示意图。这里的标识是连续的数字或字符。标识可以是预设参数键对应的序号,也可以是该预设参数键被保存的地址,服务器可以通过标识获取到对应的预设参数键。若取预设参数键的前2位为前缀502,按照前缀中每个单字符在所有前缀中的排列顺序,将预先配置的所有的预设参数键进行排列,排列后的每个预设参数键与连续的标识504一一对应,得到的预设参数键总集506以及该预设参数键总集506所包括的若干个预设参数子集508。由于参数字符串允许使用的字符对应的ASCII值的范围通常是0-127,因此预设参数键所使用的字符对应的ASCII值的范围通常也是0-127,可定义一个三位数组hitBuf[128][128][2],用于从预设参数键总集506中查找出任意一个预设参数键。该三维数组中前两维都包括128个元素,用于定位与预设参数键的包含两位字符的前缀对应的预设参数键子集,第三维包括2个元素,其中一个表示包含该前缀的预设参数键的首地址,第二个表示包含该前缀的预设参数键的个数。比如,该三维数组中的元素hitBuf[97][97][0]表示前缀为aa的预设参数键子集中首个预设参数键的首地址,元素hitBuf[97][97][1表示前缀为aa的预设参数键子集中预设参数键的个数,元素hitBuf[97][98][0]表示前缀为ab的预设参数键子集中首个预设参数键的首地址,元素hitBuf[97][98][1]表示前缀为ab的预设参数键子集中预设参数键的个数。进一步地,在服务器从识别出的参数键中提取出前缀bc后,根据前缀的每个单字符b和c分别对应在三维数组前2个维度的元素位置,可确认元素hitBuf[98][99[0]的值所对应的标识,由此就可以将从该标识起连续数量(数量为hitBuf[98][99[1]的值)的标识所对应预设参数键构成的集合确定为前缀bc所对应的预设参数键子集。服务器就可以将识别的参数键与该预设参数键子集中的任一预设参数键进行匹配,以确定识别出的参数键是否为预设参数键。
可以理解,若前缀只有一个字符,那么数组是二维的;若前缀有三个字符,那么数组是四维的。数组的维度可根据前缀所包含的字符个数进行调整,而前缀的字符个数可根据预设参数键的数量或者分布程度来进行选择。如果多维数组前n维的长度都相同,比如都包括128个元素,最后一维的长度也相同,比如都包括2个元素,那么数组维度越高,数组元素就多,占用的空间就越多,但查找的效率就很高;相反地,数组维度越小,数组的元素就少,占用的空间就越少,但查找效率就会相对低一些。
在本实施例中,通过使用前缀和在对应的预设参数键子集中查找的次数构成多维数组,用于对参数键是否属于预设参数键进行匹配查找,对于任一识别出的参数键而言,匹配的次数不超过对应的预设参数键子集所包含的预设参数键的个数,是一个常数时间,与预设参数键的总体个数无关,能够极大地提高匹配的效率。
如图6所示,在一个具体的实施例中,参数字符串处理方法具体包括以下步骤:
S602,获取资源标识符的参数字符串;参数字符串包括参数字段和用于分隔不同参数字段的分隔符。
S604,按参数字符串的正序扫描参数字符串。
S606,将正序扫描参数字符串得到的参数字段和分隔符依次保存至栈中。
S608,当扫描到分隔符时,获取当次扫描的分隔符,并从栈中读取前次扫描的分隔符。
S610,确定当次扫描的分隔符和前次扫描的分隔符间的层次关系。
S612,根据当次扫描的分隔符和前次扫描的分隔符的组合、以及层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型。
S614,当识别到参数字段是参数键时,提取参数键的前缀。
S616,提取前缀的每个单字符。
S618,按照每个单字符在前缀中的排列顺序,分别确定每个单字符对应于多维数组中相应维度的元素位置。
S620,按照确定的元素位置,从多维数组中用于存储地址的维度读取首地址和参数键数量。
S622,将从首地址起存储的参数键数量的预设参数键确定为与前缀对应的预设参数键子集;预设参数键子集中的预设参数键均具有前缀。
S624,从预设参数键子集中查找与参数键匹配的预设参数键。
S626,在查找到参数键匹配的预设参数键时,则继续扫描以扫描到下一个与参数键同一层次的参数键。
S628,确定匹配的参数键和与匹配的参数键同一层次的参数键之间的参数值。
S630,将确定的参数值替换为相应的掩码。
上述参数字符串处理方法,按照参数字符串的正序进行扫描,依次得到参数字符串中的参数字段和分隔符,当扫描到分隔符时,基于当次扫描的分隔符和前次扫描的分隔符的层次关系以及形成的组合就能直接识别出两个分隔符间参数字段的字段类型,识别的效率与参数字符串中分隔符的嵌套层次无关,对于包含任意嵌套层次的分隔符的参数字符串,能够实现只需一次扫描整个参数字符串就能确定该参数字符串中各个参数字段的字段类型,大大提高了对参数字符串进行识别的效率。
图6为一个实施例中参数字符串处理方法的流程示意图。应该理解的是,虽然图6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图7所示,在一个实施例中,提供了一种参数字符串处理装置700,该装置700包括:参数字符串获取模块702、扫描模块704、分隔符获取模块706、层次关系确定模块708和字段类型识别模块710,其中:
参数字符串获取模块702,用于获取资源标识符的参数字符串;参数字符串包括参数字段和用于分隔不同参数字段的分隔符。
扫描模块704,用于按参数字符串的正序扫描参数字符串。
分隔符获取模块706,用于当扫描到分隔符时,获取当次扫描的分隔符和前次扫描的分隔符。
层次关系确定模块708,用于确定当次扫描的分隔符和前次扫描的分隔符间的层次关系。
字段类型识别模块710,用于根据当次扫描的分隔符和前次扫描的分隔符的组合、以及层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型。
在一个实施例中,层次关系确定模块708还用于在当次扫描的分隔符和前次扫描的分隔符分别是键值连接符和键值对分隔符中的不同种时,确定当次扫描的分隔符和前次扫描的分隔符属于同一层;或,在当次扫描的分隔符是解析转义字符串得到的分隔符时,确定当次扫描的分隔符和前次扫描的分隔符属于不同层。
在一个实施例中,层次关系确定模块708还用于在当次扫描的分隔符和前次扫描的分隔符均是解析转义字符串得到的键值连接符、且当次扫描的分隔符比前次扫描的分隔符多一层转义层次时,确定当次扫描的分隔符比前次扫描的分隔符多一层;或,在当次扫描的分隔符和前次扫描的分隔符均是解析转义字符串得到的分隔符、且当次扫描的分隔符比前次扫描的分隔符少一层转义层次时,确定当次扫描的分隔符比前次扫描的分隔符少一层。
如图8所示,在一个实施例中,字段类型识别模块710包括参数键识别模块802和参数值识别模块804。其中,参数键识别模块802用于在当次扫描的分隔符是键值连接符时,且当前次扫描的分隔符是键值对分隔符时,且在当次扫描的分隔符和前次扫描的分隔符属于同一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数键。
在一个实施例中,参数键识别模块802还用于在当次扫描的分隔符是键值连接符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符比前次扫描的分隔符多一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数键。
在一个实施例中,参数值识别模块804用于在当次扫描的分隔符是键值对分隔符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符和前次扫描的分隔符属于同一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数值。
在一个实施例中,参数值识别模块804还用于在当次扫描的分隔符是键值对分隔符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符比前次扫描的分隔符少一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数值。
如图9所示,在一个实施例中,参数字符串处理装置700还包括查找模块902和屏蔽处理模块904。其中:
查找模块902,用于当识别到参数字段是参数键时,查找与参数键匹配的预设参数键。
屏蔽处理模块904,用于在查找到参数键匹配的预设参数键时,则将参数键对应的参数值进行屏蔽处理。
在一个实施例中,屏蔽处理模块904还用于在查找到参数键匹配的预设参数键时,则继续扫描以扫描到下一个与参数键同一层次的参数键;确定匹配的参数键和与匹配的参数键同一层次的参数键之间的参数值;将确定的参数值替换为相应的掩码。
如图10所示,在一个实施例中,查找模块902具体包括前缀提取模块1002、预设参数键子集确定模块1004。其中:
前缀提取模块1002,用于提取参数键的前缀。
预设参数键子集确定模块1004,用于确定与前缀对应的预设参数键子集;预设参数键子集中的预设参数键均具有前缀。
查找模块902还用于从预设参数键子集中查找与参数键匹配的预设参数键。
在一个实施例中,预设参数键子集确定模块1004还用于提取前缀的每个单字符;按照每个单字符在前缀中的排列顺序,分别确定每个单字符对应于多维数组中相应维度的元素位置;按照确定的元素位置,从多维数组中用于存储地址的维度读取首地址和参数键数量;将从首地址起存储的参数键数量的预设参数键确定为与前缀对应的预设参数键子集。
在一个实施例中,参数字符串处理装置700还包括保存模块,保存模块用于将正序扫描参数字符串得到的参数字段和分隔符依次保存至栈中;分隔符获取模块706还用于获取当次扫描的分隔符,并从栈中读取前次扫描的分隔符。
上述参数字符串处理装置,按照参数字符串的正序进行扫描,依次得到参数字符串中的参数字段和分隔符,当扫描到分隔符时,基于当次扫描的分隔符和前次扫描的分隔符的层次关系以及形成的组合就能直接识别出两个分隔符间参数字段的字段类型,识别的效率与参数字符串中分隔符的嵌套层次无关,对于包含任意嵌套层次的分隔符的参数字符串,能够实现只需一次扫描整个参数字符串就能确定该参数字符串中各个参数字段的字段类型,大大提高了对参数字符串进行识别的效率。
图11示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的服务器120。如图11所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现参数字符串处理方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行参数字符串处理方法。
本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的参数字符串处理装置可以实现为一种计算机程序的形式,计算机程序可在如图11所示的计算机设备上运行。计算机设备的存储器中可存储组成该参数字符串处理装置的各个程序模块,比如,图7所示的参数字符串获取模块702、扫描模块704、分隔符获取模块706、层次关系确定模块708和字段类型识别模块710。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的参数字符串处理方法中的步骤。
例如,图11所示的计算机设备可以通过如图7所示的参数字符串处理装置中的参数字符串获取模块702执行步骤S202。计算机设备可通过扫描模块704执行步骤S204。计算机设备可通过分隔符获取模块706执行步骤S206。计算机设备可通过层次关系确定模块708执行步骤S208。计算机设备可通过字段类型识别模块710执行步骤S210。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:获取资源标识符的参数字符串;参数字符串包括参数字段和用于分隔不同参数字段的分隔符;按参数字符串的正序扫描参数字符串;当扫描到分隔符时,获取当次扫描的分隔符和前次扫描的分隔符;确定当次扫描的分隔符和前次扫描的分隔符间的层次关系;根据当次扫描的分隔符和前次扫描的分隔符的组合、以及层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型。
在一个实施例中,计算机程序被处理器执行确定当次扫描的分隔符和前次扫描的分隔符间的层次关系的步骤时,使得处理器具体执行以下步骤:在当次扫描的分隔符和前次扫描的分隔符分别是键值连接符和键值对分隔符中的不同种时,确定当次扫描的分隔符和前次扫描的分隔符属于同一层;或,在当次扫描的分隔符是解析转义字符串得到的分隔符时,确定当次扫描的分隔符和前次扫描的分隔符属于不同层。
在一个实施例中,计算机程序被处理器执行在当次扫描的分隔符是解析转义字符串得到的分隔符时,确定当次扫描的分隔符和前次扫描的分隔符属于不同层的步骤时,使得处理器具体执行以下步骤:在当次扫描的分隔符和前次扫描的分隔符均是解析转义字符串得到的键值连接符、且当次扫描的分隔符比前次扫描的分隔符多一层转义层次时,确定当次扫描的分隔符比前次扫描的分隔符多一层;或,在当次扫描的分隔符和前次扫描的分隔符均是解析转义字符串得到的分隔符、且当次扫描的分隔符比前次扫描的分隔符少一层转义层次时,确定当次扫描的分隔符比前次扫描的分隔符少一层。
在一个实施例中,计算机程序被处理器执行根据当次扫描的分隔符和前次扫描的分隔符的组合、以及层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型的步骤时,使得处理器具体执行以下步骤:在当次扫描的分隔符是键值连接符时,且当前次扫描的分隔符是键值对分隔符时,且在当次扫描的分隔符和前次扫描的分隔符属于同一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数键。
在一个实施例中,计算机程序被处理器执行根据当次扫描的分隔符和前次扫描的分隔符的组合、以及层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型的步骤时,使得处理器具体执行以下步骤:在当次扫描的分隔符是键值连接符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符比前次扫描的分隔符多一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数键。
在一个实施例中,计算机程序被处理器执行根据当次扫描的分隔符和前次扫描的分隔符的组合、以及层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型的步骤时,使得处理器具体执行以下步骤:在当次扫描的分隔符是键值对分隔符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符和前次扫描的分隔符属于同一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数值。
在一个实施例中,计算机程序被处理器执行根据当次扫描的分隔符和前次扫描的分隔符的组合、以及层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型的步骤时,使得处理器具体执行以下步骤:在当次扫描的分隔符是键值对分隔符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符比前次扫描的分隔符少一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数值。
在一个实施例中,计算机程序被处理器执行时,使得处理器还执行以下步骤:当识别到参数字段是参数键时,查找与参数键匹配的预设参数键;在查找到参数键匹配的预设参数键时,则将参数键对应的参数值进行屏蔽处理。
在一个实施例中,计算机程序被处理器执行在查找到参数键匹配的预设参数键时,则将参数键对应的参数值进行屏蔽处理的步骤时,使得处理器具体执行以下步骤:在查找到参数键匹配的预设参数键时,则继续扫描以扫描到下一个与参数键同一层次的参数键;确定匹配的参数键和与匹配的参数键同一层次的参数键之间的参数值;将确定的参数值替换为相应的掩码。
在一个实施例中,计算机程序被处理器执行查找与参数键匹配的预设参数键的步骤时,使得处理器具体执行以下步骤:提取参数键的前缀;确定与前缀对应的预设参数键子集;预设参数键子集中的预设参数键均具有前缀;从预设参数键子集中查找与参数键匹配的预设参数键。
在一个实施例中,计算机程序被处理器执行确定与前缀对应的预设参数键子集的步骤时,使得处理器具体执行以下步骤:提取前缀的每个单字符;按照每个单字符在前缀中的排列顺序,分别确定每个单字符对应于多维数组中相应维度的元素位置;按照确定的元素位置,从多维数组中用于存储地址的维度读取首地址和参数键数量;将从首地址起存储的参数键数量的预设参数键确定为与前缀对应的预设参数键子集。
在一个实施例中,计算机程序被处理器执行时,使得处理器还执行以下步骤:将正序扫描参数字符串得到的参数字段和分隔符依次保存至栈中;获取当次扫描的分隔符和前次扫描的分隔符,包括:获取当次扫描的分隔符,并从栈中读取前次扫描的分隔符。
上述计算机设备,按照参数字符串的正序进行扫描,依次得到参数字符串中的参数字段和分隔符,当扫描到分隔符时,基于当次扫描的分隔符和前次扫描的分隔符的层次关系以及形成的组合就能直接识别出两个分隔符间参数字段的字段类型,识别的效率与参数字符串中分隔符的嵌套层次无关,对于包含任意嵌套层次的分隔符的参数字符串,能够实现只需一次扫描整个参数字符串就能确定该参数字符串中各个参数字段的字段类型,大大提高了对参数字符串进行识别的效率。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:获取资源标识符的参数字符串;参数字符串包括参数字段和用于分隔不同参数字段的分隔符;按参数字符串的正序扫描参数字符串;当扫描到分隔符时,获取当次扫描的分隔符和前次扫描的分隔符;确定当次扫描的分隔符和前次扫描的分隔符间的层次关系;根据当次扫描的分隔符和前次扫描的分隔符的组合、以及层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型。
在一个实施例中,计算机程序被处理器执行确定当次扫描的分隔符和前次扫描的分隔符间的层次关系的步骤时,使得处理器具体执行以下步骤:在当次扫描的分隔符和前次扫描的分隔符分别是键值连接符和键值对分隔符中的不同种时,确定当次扫描的分隔符和前次扫描的分隔符属于同一层;或,在当次扫描的分隔符是解析转义字符串得到的分隔符时,确定当次扫描的分隔符和前次扫描的分隔符属于不同层。
在一个实施例中,计算机程序被处理器执行在当次扫描的分隔符是解析转义字符串得到的分隔符时,确定当次扫描的分隔符和前次扫描的分隔符属于不同层的步骤时,使得处理器具体执行以下步骤:在当次扫描的分隔符和前次扫描的分隔符均是解析转义字符串得到的键值连接符、且当次扫描的分隔符比前次扫描的分隔符多一层转义层次时,确定当次扫描的分隔符比前次扫描的分隔符多一层;或,在当次扫描的分隔符和前次扫描的分隔符均是解析转义字符串得到的分隔符、且当次扫描的分隔符比前次扫描的分隔符少一层转义层次时,确定当次扫描的分隔符比前次扫描的分隔符少一层。
在一个实施例中,计算机程序被处理器执行根据当次扫描的分隔符和前次扫描的分隔符的组合、以及层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型的步骤时,使得处理器具体执行以下步骤:在当次扫描的分隔符是键值连接符时,且当前次扫描的分隔符是键值对分隔符时,且在当次扫描的分隔符和前次扫描的分隔符属于同一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数键。
在一个实施例中,计算机程序被处理器执行根据当次扫描的分隔符和前次扫描的分隔符的组合、以及层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型的步骤时,使得处理器具体执行以下步骤:在当次扫描的分隔符是键值连接符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符比前次扫描的分隔符多一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数键。
在一个实施例中,计算机程序被处理器执行根据当次扫描的分隔符和前次扫描的分隔符的组合、以及层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型的步骤时,使得处理器具体执行以下步骤:在当次扫描的分隔符是键值对分隔符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符和前次扫描的分隔符属于同一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数值。
在一个实施例中,计算机程序被处理器执行根据当次扫描的分隔符和前次扫描的分隔符的组合、以及层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型的步骤时,使得处理器具体执行以下步骤:在当次扫描的分隔符是键值对分隔符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符比前次扫描的分隔符少一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数值。
在一个实施例中,计算机程序被处理器执行时,使得处理器还执行以下步骤:当识别到参数字段是参数键时,查找与参数键匹配的预设参数键;在查找到参数键匹配的预设参数键时,则将参数键对应的参数值进行屏蔽处理。
在一个实施例中,计算机程序被处理器执行在查找到参数键匹配的预设参数键时,则将参数键对应的参数值进行屏蔽处理的步骤时,使得处理器具体执行以下步骤:在查找到参数键匹配的预设参数键时,则继续扫描以扫描到下一个与参数键同一层次的参数键;确定匹配的参数键和与匹配的参数键同一层次的参数键之间的参数值;将确定的参数值替换为相应的掩码。
在一个实施例中,计算机程序被处理器执行查找与参数键匹配的预设参数键的步骤时,使得处理器具体执行以下步骤:提取参数键的前缀;确定与前缀对应的预设参数键子集;预设参数键子集中的预设参数键均具有前缀;从预设参数键子集中查找与参数键匹配的预设参数键。
在一个实施例中,计算机程序被处理器执行确定与前缀对应的预设参数键子集的步骤时,使得处理器具体执行以下步骤:提取前缀的每个单字符;按照每个单字符在前缀中的排列顺序,分别确定每个单字符对应于多维数组中相应维度的元素位置;按照确定的元素位置,从多维数组中用于存储地址的维度读取首地址和参数键数量;将从首地址起存储的参数键数量的预设参数键确定为与前缀对应的预设参数键子集。
在一个实施例中,计算机程序被处理器执行时,使得处理器还执行以下步骤:将正序扫描参数字符串得到的参数字段和分隔符依次保存至栈中;获取当次扫描的分隔符和前次扫描的分隔符,包括:获取当次扫描的分隔符,并从栈中读取前次扫描的分隔符。
上述计算机可读存储介质,按照参数字符串的正序进行扫描,依次得到参数字符串中的参数字段和分隔符,当扫描到分隔符时,基于当次扫描的分隔符和前次扫描的分隔符的层次关系以及形成的组合就能直接识别出两个分隔符间参数字段的字段类型,识别的效率与参数字符串中分隔符的嵌套层次无关,对于包含任意嵌套层次的分隔符的参数字符串,能够实现只需一次扫描整个参数字符串就能确定该参数字符串中各个参数字段的字段类型,大大提高了对参数字符串进行识别的效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (26)

1.一种参数字符串处理方法,包括:
获取资源标识符的参数字符串;所述参数字符串包括参数字段和用于分隔不同参数字段的分隔符,所述参数字段的字段类型包括参数键和参数值,所述分隔符包括键值连接符和键值对分隔符,所述参数字符串为嵌套的参数字符串,所述嵌套的参数字符串中包括至少一个以字符串或键值对为参数值的参数键;
对所述参数字符串中的转义字符串进行反转义处理后,对反转义处理后的参数字符串,按所述参数字符串的正序扫描所述参数字符串;
当扫描到分隔符时,获取当次扫描的分隔符和前次扫描的分隔符;
确定当次扫描的分隔符和前次扫描的分隔符间的层次关系,所述层次关系是当次扫描的分隔符与前次扫描的分隔符的嵌套层次之间的关系,所述嵌套层次与分隔符被反转义的次数相关;
根据当次扫描的分隔符和前次扫描的分隔符的组合、以及所述层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型。
2.根据权利要求1所述的方法,其特征在于,所述确定当次扫描的分隔符和前次扫描的分隔符间的层次关系,包括:
在当次扫描的分隔符和前次扫描的分隔符分别是键值连接符和键值对分隔符中的不同种时,确定当次扫描的分隔符和前次扫描的分隔符属于同一层;或,
在当次扫描的分隔符是解析转义字符串得到的分隔符时,确定当次扫描的分隔符和前次扫描的分隔符属于不同层。
3.根据权利要求2所述的方法,其特征在于,所述在当次扫描的分隔符是解析转义字符串得到的分隔符时,确定当次扫描的分隔符和前次扫描的分隔符属于不同层,包括:
在当次扫描的分隔符和前次扫描的分隔符均是解析转义字符串得到的键值连接符、且当次扫描的分隔符比前次扫描的分隔符多一层转义层次时,确定当次扫描的分隔符比前次扫描的分隔符多一层;或,
在当次扫描的分隔符和前次扫描的分隔符均是解析转义字符串得到的分隔符、且当次扫描的分隔符比前次扫描的分隔符少一层转义层次时,确定当次扫描的分隔符比前次扫描的分隔符少一层。
4.根据权利要求1所述的方法,其特征在于,所述根据当次扫描的分隔符和前次扫描的分隔符的组合、以及所述层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型,包括:
在当次扫描的分隔符是键值连接符时,且
当前次扫描的分隔符是键值对分隔符时,且
在当次扫描的分隔符和前次扫描的分隔符属于同一层时,则
将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数键。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述根据当次扫描的分隔符和前次扫描的分隔符的组合、以及所述层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型,包括:
在当次扫描的分隔符是键值连接符时,且
当前次扫描的分隔符是键值连接符时,且
在当次扫描的分隔符比前次扫描的分隔符多一层时,则
将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数键。
6.根据权利要求1至4任一项所述的方法,其特征在于,所述根据当次扫描的分隔符和前次扫描的分隔符的组合、以及所述层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型,包括:
在当次扫描的分隔符是键值对分隔符时,且
当前次扫描的分隔符是键值连接符时,且
在当次扫描的分隔符和前次扫描的分隔符属于同一层时,则
将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数值。
7.根据权利要求1至4任一项所述的方法,其特征在于,所述根据当次扫描的分隔符和前次扫描的分隔符的组合、以及所述层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型,包括:
在当次扫描的分隔符是键值对分隔符时,且
当前次扫描的分隔符是键值连接符时,且
在当次扫描的分隔符比前次扫描的分隔符少一层时,则
将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数值。
8.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:
当识别到所述参数字段是参数键时,查找与所述参数键匹配的预设参数键;
在查找到所述参数键匹配的预设参数键时,则将所述参数键对应的参数值进行屏蔽处理。
9.根据权利要求8所述的方法,其特征在于,所述在查找到所述参数键匹配的预设参数键时,则将所述参数键对应的参数值进行屏蔽处理,包括:
在查找到所述参数键匹配的预设参数键时,则继续扫描以扫描到下一个与所述参数键同一层次的参数键;
确定匹配的参数键和与匹配的参数键同一层次的参数键之间的参数值;
将确定的所述参数值替换为相应的掩码。
10.根据权利要求8所述的方法,其特征在于,所述查找与所述参数键匹配的预设参数键,包括:
提取所述参数键的前缀;
确定与所述前缀对应的预设参数键子集;所述预设参数键子集中的预设参数键均具有所述前缀;
从所述预设参数键子集中查找与所述参数键匹配的预设参数键。
11.根据权利要求10所述的方法,其特征在于,所述确定与所述前缀对应的预设参数键子集,包括:
提取所述前缀的每个单字符;
按照每个单字符在所述前缀中的排列顺序,分别确定每个单字符对应于多维数组中相应维度的元素位置;
按照确定的元素位置,从所述多维数组中用于存储地址的维度读取首地址和参数键数量;
将从所述首地址起存储的所述参数键数量的预设参数键确定为与所述前缀对应的预设参数键子集。
12.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:
将正序扫描所述参数字符串得到的参数字段和分隔符依次保存至栈中;
所述获取当次扫描的分隔符和前次扫描的分隔符,包括:
获取当次扫描的分隔符,并从所述栈中读取前次扫描的分隔符。
13.一种参数字符串处理装置,包括:
参数字符串获取模块,用于获取资源标识符的参数字符串;所述参数字符串包括参数字段和用于分隔不同参数字段的分隔符,所述参数字段的字段类型包括参数键和参数值,所述分隔符包括键值连接符和键值对分隔符,所述参数字符串为嵌套的参数字符串,所述嵌套的参数字符串中包括至少一个以字符串或键值对为参数值的参数键;
扫描模块,用于对所述参数字符串中的转义字符串进行反转义处理后,对反转义处理后的参数字符串,按所述参数字符串的正序扫描所述参数字符串;
分隔符获取模块,用于当扫描到分隔符时,获取当次扫描的分隔符和前次扫描的分隔符;
层次关系确定模块,用于确定当次扫描的分隔符和前次扫描的分隔符间的层次关系,所述层次关系是当次扫描的分隔符与前次扫描的分隔符的嵌套层次之间的关系,所述嵌套层次与分隔符被反转义的次数相关;
字段类型识别模块,用于根据当次扫描的分隔符和前次扫描的分隔符的组合、以及所述层次关系,识别当次扫描的分隔符和前次扫描的分隔符间参数字段的字段类型。
14.根据权利要求13所述的参数字符串处理装置,其特征在于,所述层次关系确定模块还用于在当次扫描的分隔符和前次扫描的分隔符分别是键值连接符和键值对分隔符中的不同种时,确定当次扫描的分隔符和前次扫描的分隔符属于同一层;或,在当次扫描的分隔符是解析转义字符串得到的分隔符时,确定当次扫描的分隔符和前次扫描的分隔符属于不同层。
15.根据权利要求14所述的参数字符串处理装置,其特征在于,层次关系确定模块还用于在当次扫描的分隔符和前次扫描的分隔符均是解析转义字符串得到的键值连接符、且当次扫描的分隔符比前次扫描的分隔符多一层转义层次时,确定当次扫描的分隔符比前次扫描的分隔符多一层;或,在当次扫描的分隔符和前次扫描的分隔符均是解析转义字符串得到的分隔符、且当次扫描的分隔符比前次扫描的分隔符少一层转义层次时,确定当次扫描的分隔符比前次扫描的分隔符少一层。
16.根据权利要求13所述的参数字符串处理装置,其特征在于,字段类型识别模块还用于在当次扫描的分隔符是键值连接符时,且当前次扫描的分隔符是键值对分隔符时,且在当次扫描的分隔符和前次扫描的分隔符属于同一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数键。
17.根据权利要求13至16任一项所述的参数字符串处理装置,其特征在于,所述字段类型识别模块还用于在当次扫描的分隔符是键值连接符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符比前次扫描的分隔符多一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数键。
18.根据权利要求13至16任一项所述的参数字符串处理装置,其特征在于,所述参数值识别模块还用于在当次扫描的分隔符是键值对分隔符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符和前次扫描的分隔符属于同一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数值。
19.根据权利要求13至16任一项所述的参数字符串处理装置,其特征在于,所述参数值识别模块还用于在当次扫描的分隔符是键值对分隔符时,且当前次扫描的分隔符是键值连接符时,且在当次扫描的分隔符比前次扫描的分隔符少一层时,则将当次扫描的分隔符和前次扫描的分隔符间的参数字段识别为参数值。
20.根据权利要求13至16任一项所述的参数字符串处理装置,其特征在于,所述参数字符串处理装置还包括查找模块和屏蔽处理模块;
所述查找模块用于当识别到所述参数字段是参数键时,查找与所述参数键匹配的预设参数键;
所述屏蔽处理模块用于在查找到所述参数键匹配的预设参数键时,则将所述参数键对应的参数值进行屏蔽处理。
21.根据权利要求20所述的参数字符串处理装置,其特征在于,所述屏蔽处理模块还用于在查找到所述参数键匹配的预设参数键时,则继续扫描以扫描到下一个与所述参数键同一层次的参数键;确定匹配的参数键和与匹配的参数键同一层次的参数键之间的参数值;将确定的所述参数值替换为相应的掩码。
22.根据权利要求20所述的参数字符串处理装置,其特征在于,所述查找模块具体包括前缀提取模块、预设参数键子集确定模块;
所述前缀提取模块,用于提取所述参数键的前缀;
所述预设参数键子集确定模块,用于确定与所述前缀对应的预设参数键子集;所述预设参数键子集中的预设参数键均具有所述前缀;
所述查找模块,用于从所述预设参数键子集中查找与所述参数键匹配的预设参数键。
23.根据权利要求22所述的参数字符串处理装置,其特征在于,所述预设参数键子集确定模块还用于提取所述前缀的每个单字符;按照每个单字符在所述前缀中的排列顺序,分别确定每个单字符对应于多维数组中相应维度的元素位置;按照确定的元素位置,从所述多维数组中用于存储地址的维度读取首地址和参数键数量;将从所述首地址起存储的所述参数键数量的预设参数键确定为与所述前缀对应的预设参数键子集。
24.根据权利要求13至16任一项所述的参数字符串处理装置,其特征在于,所述参数字符串处理装置还包括保存模块,用于将正序扫描所述参数字符串得到的参数字段和分隔符依次保存至栈中;所述分隔符获取模块还用于获取当次扫描的分隔符,并从所述栈中读取前次扫描的分隔符。
25.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至12中任一项所述方法的步骤。
26.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至12中任一项所述方法的步骤。
CN201810207716.7A 2018-03-14 2018-03-14 参数字符串处理方法、装置、计算机可读存储介质和设备 Active CN108319589B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810207716.7A CN108319589B (zh) 2018-03-14 2018-03-14 参数字符串处理方法、装置、计算机可读存储介质和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810207716.7A CN108319589B (zh) 2018-03-14 2018-03-14 参数字符串处理方法、装置、计算机可读存储介质和设备

Publications (2)

Publication Number Publication Date
CN108319589A CN108319589A (zh) 2018-07-24
CN108319589B true CN108319589B (zh) 2021-08-10

Family

ID=62901617

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810207716.7A Active CN108319589B (zh) 2018-03-14 2018-03-14 参数字符串处理方法、装置、计算机可读存储介质和设备

Country Status (1)

Country Link
CN (1) CN108319589B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109670123B (zh) * 2018-12-28 2021-02-26 杭州迪普科技股份有限公司 一种数据处理的方法和装置
CN110298018B (zh) * 2019-05-14 2023-07-07 深圳市雄帝科技股份有限公司 文本数据处理方法、装置、计算机设备及存储介质
CN113779932A (zh) * 2021-08-24 2021-12-10 深圳市明源云科技有限公司 数字格式化方法、装置、终端设备及存储介质
CN114363167B (zh) * 2021-12-20 2024-03-19 北京百度网讯科技有限公司 网段信息处理方法、装置、电子设备以及存储介质
CN116821437B (zh) * 2023-08-30 2023-11-07 英诺达(成都)电子科技有限公司 数据处理方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104268280A (zh) * 2014-10-17 2015-01-07 中国人民解放军国防科学技术大学 一种基于键值数据库的层次化存储与查询方法
CN105808262A (zh) * 2016-03-11 2016-07-27 浙江工业大学 一种基于json格式数据的命名匹配方法
CN106027512A (zh) * 2016-05-16 2016-10-12 武汉斗鱼网络科技有限公司 一种基于可见字符的网络协议格式及其编解码方法、系统
CN107341135A (zh) * 2017-05-24 2017-11-10 中国科学院信息工程研究所 一种面向通用文本格式的解析方法及工具
CN107547610A (zh) * 2016-06-29 2018-01-05 腾讯科技(深圳)有限公司 一种字符信息处理方法、服务器及终端

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7694287B2 (en) * 2005-06-29 2010-04-06 Visa U.S.A. Schema-based dynamic parse/build engine for parsing multi-format messages
CN103927340B (zh) * 2014-03-27 2017-06-27 中国科学院信息工程研究所 一种密文检索方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104268280A (zh) * 2014-10-17 2015-01-07 中国人民解放军国防科学技术大学 一种基于键值数据库的层次化存储与查询方法
CN105808262A (zh) * 2016-03-11 2016-07-27 浙江工业大学 一种基于json格式数据的命名匹配方法
CN106027512A (zh) * 2016-05-16 2016-10-12 武汉斗鱼网络科技有限公司 一种基于可见字符的网络协议格式及其编解码方法、系统
CN107547610A (zh) * 2016-06-29 2018-01-05 腾讯科技(深圳)有限公司 一种字符信息处理方法、服务器及终端
CN107341135A (zh) * 2017-05-24 2017-11-10 中国科学院信息工程研究所 一种面向通用文本格式的解析方法及工具

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
DREAM.XIN.URL编码.《https://www.cnblogs.com/xq1314/p/7911362.html》.2017,第1页. *
nginScript系列:使用nginScript掩蔽用户隐私数据;@xuemingdeng;《https://www.zybuluo.com/xuemingdeng/note/789614》;20170619;第1-3页 *
URL编码;DREAM.XIN;《https://www.cnblogs.com/xq1314/p/7911362.html》;20171128;第1页 *

Also Published As

Publication number Publication date
CN108319589A (zh) 2018-07-24

Similar Documents

Publication Publication Date Title
CN108319589B (zh) 参数字符串处理方法、装置、计算机可读存储介质和设备
CN108491450B (zh) 数据缓存方法、装置、服务器和存储介质
US10878121B2 (en) Method and device for converting data containing user identity
CN109325118B (zh) 不平衡样本数据预处理方法、装置和计算机设备
CN111625782B (zh) 源码的访问权限控制方法、装置、计算机设备和存储介质
WO2019148712A1 (zh) 钓鱼网站检测方法、装置、计算机设备和存储介质
CN110674247A (zh) 弹幕信息的拦截方法、装置、存储介质及设备
CN112632064A (zh) 一种基于handle系统的区块链增强方法及系统
CN111222919B (zh) 业务数据的推送方法、装置、计算机设备和存储介质
CN109684303B (zh) 通信码归属地查询方法、装置、计算机设备和存储介质
CN111125748A (zh) 越权查询的判断方法、装置、计算机设备和存储介质
CN110880150A (zh) 社区发现方法、装置、设备和可读存储介质
KR102169220B1 (ko) 모바일 디바이스 식별자를 설정하기 위한 방법 및 장치
CN109614399B (zh) 位图数据查询方法、装置、计算机设备和存储介质
CN108460116B (zh) 搜索方法、装置、计算机设备、存储介质及搜索系统
CN111522873B (zh) 区块生成方法、装置、计算机设备和存储介质
US11080301B2 (en) Storage allocation based on secure data comparisons via multiple intermediaries
CN110460585B (zh) 设备身份识别方法、装置、计算机设备以及存储介质
CN115484588A (zh) 一种移动终端id的获取方法、设备及介质
CN114039796A (zh) 网络攻击的确定方法、装置、计算机设备及存储介质
CN110457600B (zh) 查找目标群体的方法、装置、存储介质和计算机设备
CN114416806A (zh) 电力安全知识数据的采集方法、装置及计算机设备
CN109656948B (zh) 位图数据处理方法、装置、计算机设备和存储介质
JP2014524210A (ja) 可変長ノンスの生成
CN112148724A (zh) 一种设备标识处理方法、系统、计算机设备及可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant