CN113496111A - 字符串处理方法和装置 - Google Patents
字符串处理方法和装置 Download PDFInfo
- Publication number
- CN113496111A CN113496111A CN202010261492.5A CN202010261492A CN113496111A CN 113496111 A CN113496111 A CN 113496111A CN 202010261492 A CN202010261492 A CN 202010261492A CN 113496111 A CN113496111 A CN 113496111A
- Authority
- CN
- China
- Prior art keywords
- string
- sub
- target
- target character
- group
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 9
- 238000012545 processing Methods 0.000 claims abstract description 70
- 230000015654 memory Effects 0.000 claims abstract description 36
- 238000000034 method Methods 0.000 claims description 50
- 238000004590 computer program Methods 0.000 claims description 18
- 238000006243 chemical reaction Methods 0.000 claims description 15
- 230000009286 beneficial effect Effects 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 17
- 238000004891 communication Methods 0.000 description 14
- 238000004422 calculation algorithm Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 4
- 230000008520 organization Effects 0.000 description 4
- 238000012163 sequencing technique Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 238000013499 data model Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000002354 daily effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Document Processing Apparatus (AREA)
Abstract
本申请公开了字符串处理方法和装置,有助于节约内存空间,提升字符串数据处理的效率。该字符串处理方法应用于计算机设备,该方法包括:获取多个目标字符串,多个目标字符串中每个目标字符串包括至少一个字符。从每个目标字符串的相同位置获取第一子串组。其中,第一子串组中的第一子串包括第一子串所在的目标字符串中的部分字符。第一子串组中的子串对应相同的数位。根据第一子串组中不同子串的数量,确定第一子串组中每个子串对应的数位的进制数。根据第一子串组中每个子串对应的数位的进制数和第一子串组中每个子串对应的数值,确定每个目标字符串对应的目标数值,并基于每个目标字符串对应的目标数值对多个目标字符串进行处理。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及字符串处理方法和装置。
背景技术
随着信息技术的发展,企业每天需要处理海量的数据,来支撑企业市场策略制定和战略调整。例如,在通信行业,运营商需要对每天的通信数据进行分析,以调整市场营销策略。每天需要处理的数据达到几十甚至上百个T。海量数据的处理,必须提升数据处理的速度才能紧跟不断变化的市场以满足企业的需求。业界提出了学习型数据组织以提升数据处理的速度。学习型数据组织可以依据构成当前数据集合的字符特征,得到最匹配当前数据集合的字符特征的数据组织,从而获得更好的查询或者排序性能。学习型数据组织包括能够支持学习和数学优化的数据模型,能够支持学习和数学优化的数据模型具有更好的查询或排序性能,但是参与训练数据模型的数据必须先转换为数值。然而,真实业务场景中产生的数据大多是字符串。
当前,计算机设备在处理字符串时,根据字符串中的字符的美国信息交换标准代码(american standard code for information interchange,ASCII)码将字符串转换为数值。ASCII码总共包括256个不同的字符。因此,计算机设备使用每个字符的十进制ASCII码值和256进制将字符串转换为数值。例如:字符串afcdeedd中,a的十进制ASCII码值为97,f的十进制ASCII码值为102,c的十进制ASCII码值为99,d的十进制ASCII码值为100,e的十进制ASCII码值为101。字符串afcdeedd转换为的十进制数值为:97*2567+102*2566+99*2565+100*2564+101*2563+101*2562+100*2561+100。这样,字符串转换得到的数值过大。字符串转换得到的数值越大,对字符串数据处理(如:排序或查找等)时效率越低,且耗费的内存空间越大。
发明内容
本申请的实施例提供字符串处理方法和装置,有助于在对字符串数据处理时提升数据处理效率,降低内存消耗。
为达到上述目的,本申请的实施例采用如下技术方案:
第一方面,提供一种字符串转换为数值的方法,该方法包括:获取多个目标字符串,多个目标字符串中每个目标字符串包括至少一个字符。从每个目标字符串的相同位置获取第一子串组。其中,第一子串组中的第一子串包括第一子串所在的目标字符串中的部分字符或全部字符。第一子串组中的子串对应相同的数位。根据第一子串组中不同子串的数量,确定第一子串组中每个子串对应的数位的进制数。根据第一子串组中每个子串对应的数位的进制数和第一子串组中每个子串对应的数值,确定每个目标字符串对应的目标数值,并基于每个目标字符串对应的目标数值对多个目标字符串进行处理。该技术方案适用于将多个目标字符串转换为数值的场景中。该场景中,对于目标字符串中的任意一个子串对应的数位来说,基于该数位对应的子串所在的子串组中不同子串的数量,确定该数位的进制数。基于此,目标字符串转换成的数值中不同数位的进制数可以不同。而现有技术中“字符串转换成的数值中不同数位的进制数是固定的进制数,如均是256”。这样,若该多个目标字符串中不同子串的数量小于该固定的进制数,则相比现有技术,使用本申请实施例提供的技术方案,确定的数位对应的进制数,就会小于该固定的进制数。计算机设备通过获取的各数位的进制数将字符串转换为的数值就会小于通过固定的进制数将字符串转换得到的数值。计算机设备在使用本申请实施例转换得到的比较小的数值进行字符串处理(如:查找)时,有助于降低内存消耗,提升数据处理的效率。
根据第一方面,在第一方面的第一种实现方式中,第一子串对应的数位的进制数大于或等于第一子串组中不同子串的数量,且小于第一阈值。这样,第一数位的进制数大于或等于第一子串组中不同子串的数量可以保证每个子串对应的数值不同,从而保证字符串的转换准确率。而第一子串对应的数位的进制数小于第一阈值,可以使得将字符串转换后得到的数值不至于过大,从而在计算机设备使用转换得到的数值进行字符串处理时,有助于降低内存消耗,提升数据处理的效率。
根据第一方面至第一方面的第一种实现方式,在第一方面的第二种实现方式中,根据第一子串组中每个子串对应的数位的进制数和第一子串组中每个子串对应的数值,确定每个目标字符串对应的目标数值,包括:获取第一子串组中每个子串对应的数值;其中,不同子串对应的数值不同,且子串的美国信息交换标准代码ASCII码值越大的子串对应的数值越大。基于第一子串组中每个子串对应的数位的进制数和第一子串组中每个子串对应的数值,将每个目标字符串转换为目标数值。这样,目标子串的ASCII码值越大的子串对应的数值越大,将多个目标字符串中的每个目标字符串转换为数值时,能够保持该多个目标字符串中每个目标字符串相对于其他目标字符串的相对大小,从而确保对多个目标字符串处理后得到的处理结果的正确性。
根据第一方面至第一方面的第一种实现方式,在第一方面的第三种实现方式中,获取多个目标字符串,包括:获取多个待处理字符串。将多个待处理字符串中的每个待处理字符串均转换为数值,得到多个目标字符串。其中,待处理字符串与目标字符串一一对应。这样,将多个待处理字符串转换为数值之后,把转换得到的数值作为目标字符串,当目标字符串中不同子串数量小于当前固定的进制数,将多个目标字符串中的每个目标字符串转换为数值时,可以进一步减小获得的数值。计算机设备在使用转换得到的比较小的数值进行字符串处理时,有助于进一步降低内存消耗,提升数据处理的效率。
根据第一方面至第一方面的第三种实现方式,在第一方面的第四种实现方式中,多个目标字符串中包含的不同子串的个数小于或等于第二阈值。这样,可以使得将字符串转换后得到的数值不至于过大,从而,计算机设备在使用转换得到的数值进行字符串处理时,有助于降低内存消耗,提升数据处理的效率。
第二方面,提供一种字符串处理装置,该装置可用于执行上述第一方面至第一方面的任一种可能的实现方式中提供的任一种方法。示例的,该装置可以是计算机设备(如终端设备、服务器或云端服务器)或芯片等。
根据第二方面,在第二方面的第一种可能的实现方式中,可以根据上述第一方面提供的任一种方法,对该装置进行功能模块的划分。例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。
根据第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,该装置可以包括处理器,处理器用于执行上述第一方面提供的任一种方法。
第三方面,提供了一种计算机可读存储介质,如计算机非瞬态的可读存储介质。其上储存有计算机程序(或指令),当该计算机程序(或指令)在计算机上运行时,使得该计算机执行上述第一方面或第一方面的任一种可能的实现方式提供的任一种方法。
第四方面,提供了一种计算机程序产品,当其在计算机上运行时,使得第一方面或第一方面的任一种可能的实现方式提供的任一种方法被执行。
第五方面,提供了一种芯片,包括:处理器,用于从存储器中调用并运行该存储器中存储的计算机程序,执行第一方面或第一方面的任一种可能的实现方式提供的任一种方法。
可以理解的是,上述提供的任一种字符串处理装置、计算机可读存储介质、计算机程序产品或芯片等均可以应用于上文所提供的对应的方法,因此,其所能达到的有益效果可参考对应的方法中的有益效果,此处不再赘述。
附图说明
图1为本申请实施例的技术方案对字符串数据处理的流程示意图;
图2为本申请实施例提供的技术方案所适用的一种计算机设备的结构示意图;
图3为本申请实施例中多个目标字符串的示例;
图4为本申请实施例提供的一种字符串处理方法的流程示意图;
图5为计算机设备获取的3个目标字符串的示意图;
图6为计算机设备为第一子串组中不同子串分配数值的示意图;
图7为计算机设备为每个子串组中的每个子串分配的数值的示意图;
图8为计算机设备基于子串对应的数位的进制数与子串对应的数值,将第一目标字符串转换为数值的示意图;
图9为本申请实施例提供的一种字符串处理装置的结构示意图。
具体实施方式
为了方便理解本申请实施例的技术方案,首先介绍本申请相关技术所适用的应用场景。
在大数据批处理服务、大数据流处理服务、基于内存的快速存储和基于内存的中间件等应用场景中,需要将字符串数据转换为数值后,再进行业务处理。如图1所示为本申请实施例的技术方案所适用的字符串数据处理的流程示意图,上述对字符串数据进行处理的场景包括两个基本步骤:预处理和业务处理。本申请实施例所提供技术方案可应用于对多个字符串数据进行处理时的预处理。其中,预处理包括对字符串数据进行排序或创建索引等。当然,本申请实施例所提供的方案也可应用于其他需要将字符串转换为数值的场景。本申请对此不进行限定。
在本申请实施例所提供技术方案中,首先,计算机设备从多个目标字符串中每个目标字符串的相同位置获取子串,得到一个子串组或多个子串组,子串组中包括子串。每个子串是该子串所在的目标字符串中的全部字符或部分字符,至少有一个子串是该子串所在的目标字符串中的部分字符。每个子串对应一个数位,同一个子串组中的子串对应的数位相同。然后,计算机设备根据子串组中不同子串的数量,得到每个数位的进制数,并通过各个数位的进制数得到各个数位的计数单位。计算机设备将一个目标字符串中各个数位的子串对应的数值与对应的计数单位的积相加,得到该目标字符串转换为的数值。
在将目标字符串转换为数值的时候,为了保持对该多个目标字符串进行业务处理时,得到的处理结果相同,需要保证多个目标字符串转换后的数值与按照ASCII码将相同目标字符串转换得到的数值的相对大小相同。ASCII码总共包括256个字符,一个字符对应一个ASCII码值。对于一个目标字符串来说,每个字符所在的位置可能的字符情况为256种。因此,计算机设备通过单个字符的ASCII码值与256进制将一个目标字符串转换为十进制数值。本申请实施例中目标字符串中的一个子串对应一个位置,该位置可能的子串的数量即为该位置不同子串的数量。因此,可以根据子串组中不同子串的数量,得到每个数位的进制数,从而保持对该多个字符串进行业务处理时,得到的处理结果相同。通过本申请方案将字符串转换得到的数值相较于基于ASCII码将相同字符串转换得到的数值更小。
本申请实施例所提供技术方案可以由计算机设备执行,其中,计算机设备具体可以是终端设备或服务器。其中,终端设备可以是平板电脑、掌上电脑、手机或台式电脑等,服务器可以是一台服务器,也可以是由多台服务器组成的服务器集群,或者是一个云计算服务中心。
如图2所示,为本申请实施例提供的技术方案所适用的一种计算机设备的结构示意图。图2所示的计算机设备10可以包括至少一个处理器101,通信线路102,存储器103以及至少一个通信接口104。
处理器101可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
通信线路102可包括至少一条通路,比如数据总线,和/或控制总线,用于在上述组件(如至少一个处理器101,通信线路102,存储器103以及至少一个通信接口104)之间传送信息。
通信接口104,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如广域网(wide area network,WAN),局域网(local area networks,LAN)等。
存储器103,可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器103可以是独立存在,通过通信线路102与处理器101相连接。存储器103也可以和处理器101集成在一起。本申请实施例提供的存储器103通常包括非易失性存储器。其中,存储器103用于存储执行本申请方案的计算机指令,并由处理器101来控制执行。处理器101用于执行存储器103中存储的计算机指令,从而实现本申请下述实施例提供的方法。
存储器103包括内存和硬盘。
可选的,本申请实施例中的计算机指令也可以称之为应用程序代码或系统,本申请实施例对此不作具体限定。
在具体实现中,作为一种实施例,计算机设备10可以包括多个处理器,这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,计算机设备10还可以包括输出设备105和/或输入设备106。输出设备105和处理器101通信,可以以多种方式来显示信息。例如,输出设备105可以是液晶显示器(liquid crystal display,LCD),发光二级管(light emittingdiode,LED)显示设备,阴极射线管(cathode ray tube,CRT)显示设备,或投影仪(projector)等。输入设备106和处理器101通信,可以以多种方式接收用户的输入。例如,输入设备106可以是鼠标、键盘、触摸屏设备或传感设备等。
需要说明的是,图2所示的计算机设备仅为示例,其不对本申请实施例可适用的计算机设备构成限定。实际实现时,计算机设备可以包括比图2中所示的更多或更少的设备或器件。
为了方便理解,在介绍本申请实施例的字符串处理方法之前,先对其中所涉及的部分术语和技术进行简单介绍:
1)、字符
本申请实施例中,字符包括大写和小写字母,数字0到9、标点符号、特殊控制字符(如:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BS(退格)、BEL(响铃)等)、特殊符号字符(如:数学符号、单位符号等)、外来语字母或图形符号中的至少一种。
2)、字符串
字符串是由数字、字母、标点符号、特殊控制字符、特殊符号字符、外来语字母或图形符号中的至少一种组成的一串字符。
3)、数位
数位,指一个数中每一个数字所占的位置。数位从低到高可以按照从右到左的顺序对每个数位的编号来表征。例如,在十进制中,一个数的第一位是1表征“个位”,第二位是2表征“十位”,第三位是3表征“百位”等。编号小的数位比编号大的数位低。
4)、进制、计数单位
进制也就是进位计数制,是带进位的计数方法。对于任何一种进制:X进制,表示每一数位上的数值运算时都是逢X进一位。示例性的,十进制是逢十进一,二百五十六进制是逢二百五十六进一,二进制就是逢二进一。
计数单位就是数字计量单位。一个数值的最低数位的计数单位为1。除最低数位之外,一个数位的计数单位是比该数位低的所有数位的进制数的乘积。示例性的,十进制计数法中的计数单位从低数位到高数位依次为,个、十、百、千、万、十万、百万、千万、亿等。
5)、其他
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例中,“至少一个”是指一个或多个。“多个”是指两个或两个以上。
在本申请实施例中,“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
实施例一
如图3所示,为本申请实施例提供的一种字符串处理方法的流程示意图。示例性的,本实施例可以应用于图2所示的计算机设备。图3所示的方法可以包括以下步骤:
S100:计算机设备获取多个目标字符串。其中,该多个目标字符串中每个目标字符串包括至少一个字符。
本申请实施例对计算机设备获取的多个目标字符串不进行限制。
在一种实现方式中,计算机设备接收其他设备发送的多个目标字符串。或者,计算机设备读取存储的多个目标字符串。该多个目标字符串是未经处理的字符串。
在另一种实现方式中,该多个目标字符串是由计算机设备使用本申请实施例提供的技术方案或现有技术的方法将多个待处理字符串转换为的数值。这种实现方式可以用于本申请实施例提供的技术方案或现有技术的方法将多个待处理字符串转换为的数值大于等于一个阈值时,例如,大于等于大数的最小值时,则将该多个数值作为目标字符串。通过本申请实施例所提供的技术方案将该多个目标字符串先转换为数值,再进行字符串处理。这样,可以进一步减小目标字符串转换得的数值。计算机设备在使用转换得到的比较小的数值对目标字符串进行处理时,有助于降低内存消耗,提升数据处理的效率。
示例性的,如图4所示,为计算机设备获取的3个目标字符串的示意图。图4中第一个目标字符串为abc,第二个目标字符串为bcd,第三个目标字符串为efcg。
S101:计算机设备从每个目标字符串的相同位置获取第一子串组。其中,第一子串组中的第一子串包括第一子串所在的目标字符串中的部分字符。第一子串组中的子串对应相同的数位。
第一子串组是计算机设备获取的多个子串组中的任意一个。第一子串是第一子串组中的一个子串。第一子串组中的子串包括该子串所在的目标字符串中的全部或部分字符。
示例性的,当目标字符串为ab和efcd时,计算机设备按照从左到右的顺序从每个目标字符串的0位置开始,获取2个字符,得到第一子串组。第一子串组包括的子串为:ab和ef。其中,子串ab包括目标字符串ab的全部字符,子串ef包括目标字符串efcd的部分字符。
具体的,计算机设备按照从右到左的顺序,或者,按照从左到右的顺序从多个目标字符串中每个目标字符串的相同位置获取预设数量个字符,计算机设备获取的该预设数量个字符即为一个子串。计算机设备从每个目标字符串的相同位置获取的多个子串组成了一个子串组。目标字符串中字符的位置可以由该目标字符串的下标来表征。其中,下标即编号,目标字符串实际上是字符的数组,所以支持下标索引。例如:对于目标字符串ABCS来说,按照从左到右的顺序,其中,A的下标为0,B的下标为1,C的下标为2,S的下标为3。按照从右到左的顺序,其中,S的下标为0,C的下标为1,B的下标为2,A的下标为3。最终,计算机设备将多个目标字符串中的每个目标字符串划分为子串。一个目标字符串中的不同位置对应的子串属于不同的子串组。需要说明的是,本申请实施例对预设数量不进行限定。示例性的,计算机设备按照从左到右的顺序从目标字符串的0位置开始获取2个字符得到一个子串。计算机设备从位置2开始获取2个字符得到另一个子串。或者,计算机设备按照从左到右的顺序从目标字符串的0位置开始获取2个字符得到一个子串。计算机设备从位置2开始获取1个字符得到另一个子串。或者,计算机设备按照其他规则定义预设数量。
本申请实施例中,计算机设备在获取完所有目标字符串对应的子串组后,可以基于获取的子串组的数量,以及子串在所在目标字符串中的位置确定该子串对应的数位。计算机设备确定子串对应的数位的方法可以有多种。
在一种实现方式中,计算机设备基于获取的子串组的数量确定各个子串对应的最高数位,并基于每个子串组中子串在该子串所在目标字符串中的位置确定该子串对应的数位。例如,目标字符串abc被拆分成了ab和c两个子串,那么目标字符串abc的最高数位即为2。
在另一种实现方式中,计算机设备基于包含子串数量最多的目标字符串中子串的数量确定各个子串对应的最高数位,并基于每个子串组中子串在该子串所在目标字符串中的位置确定该子串对应的数位。例如,目标字符串abc被拆分成了ab和c两个子串,目标字符串abcd被拆分成了ab、c和d三个子串,那么目标字符串abcd的最高数位即为3。
可以理解的是,计算机设备获取子串前,需要先要给获取的子串分配存储空间。一个字符的存储空间为1个字节时,计算机设备在不知道多个目标字符串中包括的不同字符的个数的前提下,需要分配不同字符的总个数(如:256)个字节,用于存储从多个目标字符串中获取的字符。以此类推,计算机设备获取包括两个字符的子串时,需要256*256个字节的存储空间。然而,当大多数的子串相同时,对于相同子串只需要存储一个,计算机设备在获取子串之前并不知道子串是相同的,仍然会预留256*256个字节的存储空间用于存储子串,造成了大量的存储空间浪费。因此,在获取预设数量的字符作为子串时,子串包括的字符的个数越少,使用本申请实施例的方法对存储空间的浪费就越少。因此预设数量可以设置较小的数量,同时,计算机设备在获取子串时,可以直接根据预设数量来分配每个子串的存储空间,避免存储空间的浪费。
基于S100中的示例,结合图5,将S101的完整过程示例性的说明。计算机设备按照从左到右的顺序从目标字符串的0位置开始获取2个字符得到一个子串。计算机设备获取的第一子串组中包括从第一个目标字符串中获取的子串:ab,从第二个目标字符串中获取的子串:bc,从第三个目标字符串中获取的子串:ef。计算机设备按照从左到右的顺序从目标字符串的2位置开始获取1个字符得到一个子串。计算机设备获取的第二子串组中包括从第一个目标字符串中获取的子串:c,从第二个目标字符串中获取的子串:d,从第三个目标字符串中获取的子串:c。计算机设备按照从左到右的顺序从目标字符串的3位置开始获取1个字符得到一个子串。计算机设备获取的第三子串组中包括从第一个目标字符串中获取的子串:空,从第二个目标字符串中获取的子串:空,从第三个目标字符串中获取的子串:g。图5中计算机设备从多个目标字符串中获取到三个子串组,并确定该多个目标字符串的子串对应的最高数位为3。计算机设备按照从左到右的顺序,确定每个目标字符串中从高到低的数位对应的子串所在的子串组分别为:第一子串组、第二子串组和第三子串组。第一子串组中每个子串对应的数位为3,第二子串组中每个子串对应的数位为2,第三子串组中每个子串对应的数位为1。
S102:计算机设备根据第一子串组中不同子串的数量,确定第一子串组中每个子串对应的数位的进制数。
本申请实施例对计算机设备根据第一子串组中不同子串的数量,确定第一子串组中每个子串对应的数位的进制数的具体方式不进行限定。
在一种实现方式中,第一子串组中每个子串对应的数位的进制数为第一子串组中包含的不同子串的数量。基于S101中的示例:计算机设备确定第一子串组中每个子串对应的数位的进制数为3,计算机设备确定第二子串组中每个子串对应的数位的进制数为2。计算机设备确定第三子串组中每个子串对应的数位的进制数为1。
在另一种实现方式中,第一子串组中每个子串对应的数位的进制数大于第一子串组中不同子串的数量,且小于第一阈值。例如,第一阈值为小于256的值。这样,通过该方式获取的数位的进制数不固定。如果不同子串的数量小于当前所使用的进制数,由于,目标字符串转换数值的公式为目标字符串各个子串对应的数值与子串对应的数位的计数单位的乘积之和。一个数位的计数单位等于比该数位低的所有数位的进制数的乘积。其中,子串对应数值不变时,进制数越小,获取的数位的计数单位就越小。因此,进制数等于不同子串的数量且小于现有技术中当前所使用的进制数,将目标字符串转换得到的数值将会小于现有技术方法将相同目标字符串转换得到的数值。从而,有助于提高字符串处理的效率。
S103:计算机设备获取第一子串组中每个子串对应的数值。
具体的,计算机设备按照如下步骤获取第一子串组中每个子串对应的数值。
步骤一:计算机设备获取第一数量个不同数值。其中,第一数量为计算机设备获取的第一子串组中不同子串的数量。
本申请实施例对计算机设备获取第一数量个不同数值的方法不进行限定。在一种实现方式中,计算机设备使用序列生成连续的第一数量个不同数值。在另一种实现方式中,计算机设备获取离散的第一数量个不同数值。在又一种实现方式中,计算机设备获取不同子串中每个子串的ASCII码值,得到第一数量个不同数值。
步骤二:计算机设备将获取的第一数量个数值分配给第一子串组中每个子串。
在一种实现方式中,计算机设备将第一数量个数值中不同数值随机分配给不同子串。
在另一种实现方式中,计算机设备根据目标子串的ASCII码值的大小顺序,将第一数量个数值分配给不同目标子串,目标子串的ASCII码值越大分配给该目标子串的数值越大。这种方式中,计算机设备将多个字符串中的每个字符串转换为数值时,能够保持该多个字符串中每个字符串相对于其他字符串的相对大小。计算机设备在使用转换得到的比较小的数值进行字符串处理(如:排序或查找)时,有助于降低内存消耗,提升数据处理的效率。
计算机设备根据子串组中不同子串的数量,确定子串对应的数值,不像现有技术中使用子串的ASCII码值作为子串对应的数值。大部分情况下,计算机设备基于不同子串的数量确定的子串对应的数值都会小于子串的ASCII码值。计算机设备基于不同子串的数量确定的子串对应的数值将目标字符串转成的数值也会进一步变小。根据子串组中不同子串的数量确定的子串对应的数位的进制数以及子串对应的数值的存储,也仅需要占用极少量的存储空间。可以理解为,计算机设备将目标字符串压缩到一个紧致空间。因此,计算机设备可以将子串对应的数位与进制数的对应关系,以及子串与数值的对应关系,在进行目标字符串数据处理时一直存放于内存中,以提高目标字符串转换为数值的转换速度,从而,在计算机设备进行目标字符串处理时,提升了处理的效率。
基于S101中的示例,如图6所示为计算机设备为第一子串组中不同子串分配数值的示意图:计算机设备获取的第一子串组中不同子串的个数为3,第一数量为3。计算机设备获取的第一数量个数值为:0,1,2。计算机设备按照0,1,2数值的大小顺序依次分配给子串ab,bc,ef。其中,0分配给ab,1分配给bc,2分配给ef。其中,ab的ASCII码值小于bc的ASCII码值,bc的ASCII码值小于ef的ASCII码值。
如图7所示为计算机设备为每个子串组中的每个子串分配的数值的示意图,图7中,第一子串组由子串ab,子串bc,子串ef构成,第二子串组由子串c,子串d,子串c构成,第三子串组由子串g构成。计算机设备为多个子串组中的每个子串分配数值,得到子串ab对应的数值为0,子串bc对应的数值为1,子串ef对应的数值为2,子串c对应的数值为0,子串d对应的数值为1,子串g对应的数值为0。
本申请实施例对计算机设备中存储的子串与数值的对应关系的数据结构不进行限制,示例性的,可以是数组、队列或表格等。
S104:计算机设备根据第一子串组中每个子串对应的数位的进制数和第一子串组中每个子串对应的数值,确定每个目标字符串对应的目标数值。
具体的,计算机设备按照如下步骤将第一目标字符串转换为数值。其中,第一目标字符串是多个目标字符串中的任意一个目标字符串。
步骤一:计算机设备获取第一子串组中子串对应的数位的计数单位。
在一种实现方式中,计算机设备获取第一目标字符串中比第一子串对应的数位低的所有子串对应数位进制数的乘积。其中,第一子串为第一目标字符串中在第一子串组中的一个子串。
在另一种实现方式中,计算机设备获取第一目标字符串中比第一子串对应的数位低的所有子串对应的数位进制数的乘积,并使用第一算法获取比该乘积大的数作为第一子串组中子串对应的数位的计数单位。本申请实施例对第一算法不进行限制。示例性的,第一算法可以是将该乘积加一个正整数或者乘一个正整数,或其他类似计算方法。
步骤二:计算机设备获取第一目标字符串中子串的数值与子串的计数单位的乘积。
步骤三:计算机设备获取多个乘积之和。其中,该多个乘积中的每一个乘积为一个数位上的数值与该数位的计数单位的乘积。该多个乘积之和即为第一目标字符串转换为的数值。
基于S102、S103中的示例,如图8为计算机设备基于子串对应的数位的进制数与子串对应的数值,将第一目标字符串转换为数值的示意图。图8中,第一目标字符串为abc。在使用子串对应的数值替换第一目标字符串中的子串后,子串ab对应的数值0所在数位的计数单位为比该数位低的所有数位的进制数的乘积为2*1=2,子串c对应的数值0所在数位的计数单位为比该数位低的所有数位的进制数的乘积为1*1=1。计算机设备获取的子串ab的数值与该数值所在数位的计数单位的乘积为0*2=0,子串c的数值与该数值所在数位的计数单位的乘积为0*1=0。计算机设备将第一目标字符串转换为的数值为:该多个乘积之和为:0+0=0。第一字符串转换为的数值为0。
S105:计算机设备基于每个目标字符串对应的目标数值对多个目标字符串进行处理。
本申请实施例对多个目标字符串进行处理的具体场景不进行限定。
在一个示例中,在大数据批处理服务中,若计算机设备需要对获取的多个目标字符串进行排序,则计算机设备可以基于每个目标字符串对应的目标数值对多个目标字符串进行排序。由于计算机设备在进行字符串排序的时候需要单个字符比对,而进行数值的比较时可以直接按数值的整体进行比较。因此,计算机设备对数值的排序效率远远大于对字符串进行排序的效率。
在另一个示例中,在基于内存的快速存储场景中,若需要创建多个目标字符串的索引,则计算机设备可以基于每个目标字符串对应的目标数值创建该多个目标字符串的索引。这样,在利用该索引进行查找一个目标字符串时,可以基于该目标字符串的数值进行与或运算,而直接基于目标字符串的话,计算机设备只能进行有限的运算。因此,相较于基于目标字符串创建索引,基于目标字符串对应的目标数据创建的索引能够更快速的找到该目标字符串。
本申请实施例中,计算机设备将多个目标字符串转换为数值,对于目标字符串中的任意一个子串对应的数位来说,基于该数位对应的不同子串的数量,确定该数位的进制数。基于此,将目标字符串转换成的数值中不同数位的进制数可以不同。而现有技术中“目标字符串转换成的数值中不同数位的进制数是固定的进制数,如均是256”。这样,若该多个目标字符串中相同数位对应的不同子串的数量小于该固定的进制数,则相比现有技术,使用本申请实施例提供的技术方案,确定的子串对应数位的进制数,就会小于该固定的进制数。计算机设备通过获取的子串对应的数位的进制数将目标字符串转换为的数值就会小于通过固定的进制数将目标字符串转换得到的数值。计算机设备在使用本申请实施例转换得到的比较小的数值进行字符串处理(如:查找)时,有助于降低内存消耗,提升数据处理的效率。
将本申请实施例的技术方案应用于如下场景进行测试的结果如下:
以下分别以100万数量级的目标字符串与300万数量级的目标字符串,采用本申请实施例的方法将目标字符串转换为数值并进行排序所耗用的时间,与现有技术中多种排序算法中最优排序算法对同样数量级的目标字符串转换为数值并进行排序所耗用的时间进行对比。
比对测试中,采用两种类型的目标字符串,第一种类型为电话号码,第二种类型为随机生成的字符串。
对比算法选择,本测试中选取当前常用的9种排序算法(insertion sort,shellsort,selection sort,heap sort,bubble sort,quicksort,merge sort,radix sort和tim sort)分别对相同数据量的目标字符串进行排序,得到tim sort排序算法的耗时最少。因此,选取timsort排序算法作为对比算法。
测试结果对比如下表1中所示:
表1
由表1可以看出,tim sort排序算法中100万个字符串类型为电话号码的目标字符串排序耗时为1132ms,300万个字符串类型为电话号码的目标字符串排序耗时为3551ms。而使用本申请的方法对100万个字符串类型为电话号码的目标字符串转数值然后再排序的耗时为535ms,300万个字符串类型为电话号码的目标字符串排序耗时为1568ms。计算机设备采用本申请实施例的方法对300万个字符串类型为电话号码的目标字符串进行排序比现有技术的排序算法性能提升了(3551-1568)/3551=55.8%。上表中计算机设备采用本申请实施例的方法对300万个随机字符串类型的目标字符串进行排序比现有技术的排序算法性能提升了(9126-2297)/9126=74.8%.其他两组100万数量级字符串排序性能比对与此类似,不再赘述。由此可见,使用本申请实施例所提供的字符串处理方法,提升了计算机设备进行字符串数据处理时的数据处理效率。
上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的方法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对字符串转换为数值的装置进行功能模块的划分,例如可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
如图9所示,为本申请实施例提供的一种字符串处理装置的结构示意图。该字符串处理装置50可以用于执行上文中任意一个实施例(如图4所示的实施例)中计算机设备所执行的功能。字符串处理装置50包括:获取单元501、确定单元502和业务处理单元503。获取单元501,用于获取多个目标字符串。多个目标字符串中每个目标字符串包括至少一个字符。从每个目标字符串的相同位置获取第一子串组。其中,第一子串组中的第一子串包括第一子串所在的目标字符串中的部分字符或全部字符。第一子串组中的子串对应相同的数位。确定单元502,用于根据第一子串组中不同子串的数量,确定第一子串组中每个子串对应的数位的进制数。根据第一子串组中每个子串对应的数位的进制数和第一子串组中每个子串对应的数值,确定每个目标字符串对应的目标数值。业务处理单元503,用于基于每个目标字符串对应的目标数值对多个目标字符串进行处理。例如,结合图4,获取单元501可以用于执行S100~S101,S103。确定单元502可以用于执行S102,S104。业务处理单元503可以用于执行S105。
可选的,第一子串对应的数位的进制数大于或等于第一子串组中不同子串的数量,且小于第一阈值。
可选的,获取单元501还用于:获取第一子串组中每个子串对应的数值。其中,不同子串对应的数值不同,且子串的美国信息交换标准代码ASCII码值越大的子串对应的数值越大。确定单元502具体用于:基于第一子串组中每个子串对应的数位的进制数和第一子串组中每个子串对应的数值,将每个目标字符串转换为目标数值。
可选的,获取单元501具体用于:获取多个待处理字符串。字符串处理装置50还包括转换单元504,转换单元504用于:将多个待处理字符串中的每个待处理字符串均转换为数值,得到多个目标字符串。其中,待处理字符串与目标字符串一一对应。
需要说明的是,转换单元504在利用本实施例所提供的方法将多个待处理字符串中的每个待处理字符串均转换为数值的时候,和确定单元502可以是一个单元。
可选的,多个目标字符串中包含的不同子串的个数小于或等于第二阈值。
在一个示例中,参见图2,上述获取单元501的接收功能可以由图2中的通信接口104实现。上述获取单元501的处理功能、确定单元502、业务处理单元503和转换单元504均可以由图2中的处理器101调用存储器103中存储的计算机程序实现。
关于上述可选方式的具体描述参见前述的方法实施例,此处不再赘述。此外,上述提供的任一种字符串处理装置50的解释以及有益效果的描述均可参考上述对应的方法实施例,不再赘述。
需要说明的是,上述各个模块对应执行的动作仅是具体举例,各个单元实际执行的动作参照上述基于图4所述的实施例的描述中提及的动作或步骤。
本申请实施例还提供了一种装置(如计算机设备或芯片),包括:存储器和处理器;该存储器用于存储计算机程序,该处理器用于调用该计算机程序,以执行上文提供的任一实施例中提及的动作或步骤。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当该计算机程序在计算机上运行时,使得该计算机执行上文提供的任一实施例中提及的动作或步骤。
本申请实施例还提供了一种芯片。该芯片中集成了用于实现上述字符串处理装置的功能的电路和一个或者多个接口。可选的,该芯片支持的功能可以包括基于图4所述的实施例中的处理动作,此处不再赘述。本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可通过程序来指令相关的硬件完成。所述的程序可以存储于一种计算机可读存储介质中。上述提到的存储介质可以是只读存储器,随机接入存储器等。上述处理单元或处理器可以是中央处理器,通用处理器、特定集成电路(application specific integratedcircuit,ASIC)、微处理器(digital signal processor,DSP),现场可编程门阵列(fieldprogrammable gate array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。
本申请实施例还提供了一种包含指令的计算机程序产品,当该指令在计算机上运行时,使得计算机执行上述实施例中的任意一种方法。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriberline,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solidstate disk,SSD))等。
应注意,本申请实施例提供的上述用于存储计算机指令或者计算机程序的器件,例如但不限于,上述存储器、计算机可读存储介质和通信芯片等,均具有非易失性(non-transitory)。
在实施所要求保护的本申请过程中,本领域技术人员通过查看附图、公开内容、以及所附权利要求书,可理解并实现公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
尽管结合具体特征及其实施例对本申请进行了描述,在不脱离本申请的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本申请的示例性说明,且视为已覆盖本申请范围内的任意和所有修改、变化、组合或等同物。
Claims (10)
1.一种字符串处理方法,应用于计算机设备,其特征在于,所述方法包括:
获取多个目标字符串,所述多个目标字符串中每个目标字符串包括至少一个字符;
从所述每个目标字符串的相同位置获取第一子串组;其中,所述第一子串组中的第一子串包括所述第一子串所在的目标字符串中的部分或全部字符;所述第一子串组中的子串对应相同的数位;
根据所述第一子串组中不同子串的数量,确定所述第一子串组中每个子串对应的数位的进制数;
根据所述第一子串组中每个子串对应的数位的进制数和所述第一子串组中每个子串对应的数值,确定所述每个目标字符串对应的目标数值,并基于所述每个目标字符串对应的目标数值对所述多个目标字符串进行处理。
2.根据权利要求1所述的方法,其特征在于,所述第一子串对应的数位的进制数大于或等于所述第一子串组中不同子串的数量,且小于第一阈值。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述第一子串组中每个子串对应的数位的进制数和所述第一子串组中每个子串对应的数值,确定所述每个目标字符串对应的目标数值,包括:
获取所述第一子串组中每个子串对应的数值;其中,不同子串对应的数值不同,且子串的美国信息交换标准代码ASCII码值越大的子串对应的数值越大;
基于所述第一子串组中每个子串对应的数位的进制数和所述第一子串组中每个子串对应的数值,将所述每个目标字符串转换为目标数值。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述获取多个目标字符串,包括:
获取多个待处理字符串;
将所述多个待处理字符串中的每个待处理字符串均转换为数值,得到多个目标字符串;其中,所述待处理字符串与所述目标字符串一一对应。
5.一种字符串处理装置,其特征在于,所述装置包括:
获取单元,用于获取多个目标字符串,所述多个目标字符串中每个目标字符串包括至少一个字符;从所述每个目标字符串的相同位置获取第一子串组;其中,所述第一子串组中的第一子串包括所述第一子串所在的目标字符串中的部分或全部字符;所述第一子串组中的子串对应相同的数位;
确定单元,用于根据所述第一子串组中不同子串的数量,确定所述第一子串组中每个子串对应的数位的进制数;根据所述第一子串组中每个子串对应的数位的进制数和所述第一子串组中每个子串对应的数值,确定所述每个目标字符串对应的目标数值;
业务处理单元,用于基于所述每个目标字符串对应的目标数值对所述多个目标字符串进行处理。
6.根据权利要求5所述的装置,其特征在于,所述第一子串对应的数位的进制数大于或等于所述第一子串组中不同子串的数量,且小于第一阈值。
7.根据权利要求5或6所述的装置,其特征在于,
所述获取单元还用于:获取所述第一子串组中每个子串对应的数值;其中,不同子串对应的数值不同,且子串的美国信息交换标准代码ASCII码值越大的子串对应的数值越大;
所述确定单元具体用于,基于所述第一子串组中每个子串对应的数位的进制数和所述第一子串组中每个子串对应的数值,将所述每个目标字符串转换为目标数值。
8.根据权利要求5-7任一项所述的装置,其特征在于,
所述获取单元具体用于:获取多个待处理字符串;
所述装置还包括:转换单元,所述转换单元用于:将所述多个待处理字符串中的每个待处理字符串均转换为数值,得到多个目标字符串;其中,所述待处理字符串与所述目标字符串一一对应。
9.一种计算机设备,其特征在于,包括:存储器和处理器,所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序,以执行权利要求1-4中任意一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行权利要求1-4中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010261492.5A CN113496111A (zh) | 2020-04-03 | 2020-04-03 | 字符串处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010261492.5A CN113496111A (zh) | 2020-04-03 | 2020-04-03 | 字符串处理方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113496111A true CN113496111A (zh) | 2021-10-12 |
Family
ID=77995333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010261492.5A Pending CN113496111A (zh) | 2020-04-03 | 2020-04-03 | 字符串处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113496111A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114520715A (zh) * | 2021-12-28 | 2022-05-20 | 福建正孚软件有限公司 | 一种基于aes的加密编码方法、存储介质及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5748953A (en) * | 1989-06-14 | 1998-05-05 | Hitachi, Ltd. | Document search method wherein stored documents and search queries comprise segmented text data of spaced, nonconsecutive text elements and words segmented by predetermined symbols |
CN106033416A (zh) * | 2015-03-09 | 2016-10-19 | 阿里巴巴集团控股有限公司 | 一种字符串处理方法及装置 |
CN107749861A (zh) * | 2017-11-16 | 2018-03-02 | 平安科技(深圳)有限公司 | 信息推送方法、装置、终端设备及存储介质 |
-
2020
- 2020-04-03 CN CN202010261492.5A patent/CN113496111A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5748953A (en) * | 1989-06-14 | 1998-05-05 | Hitachi, Ltd. | Document search method wherein stored documents and search queries comprise segmented text data of spaced, nonconsecutive text elements and words segmented by predetermined symbols |
CN106033416A (zh) * | 2015-03-09 | 2016-10-19 | 阿里巴巴集团控股有限公司 | 一种字符串处理方法及装置 |
CN107749861A (zh) * | 2017-11-16 | 2018-03-02 | 平安科技(深圳)有限公司 | 信息推送方法、装置、终端设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114520715A (zh) * | 2021-12-28 | 2022-05-20 | 福建正孚软件有限公司 | 一种基于aes的加密编码方法、存储介质及系统 |
CN114520715B (zh) * | 2021-12-28 | 2024-06-25 | 福建正孚软件有限公司 | 一种基于aes的加密编码方法、存储介质及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021164231A1 (zh) | 公文摘要提取方法、装置、设备及计算机可读存储介质 | |
US10579616B2 (en) | Data search system, data search method, and program product | |
US20230161811A1 (en) | Image search system, method, and apparatus | |
CN110069523A (zh) | 一种数据查询方法、装置和查询系统 | |
CN113496111A (zh) | 字符串处理方法和装置 | |
CN114492354A (zh) | 一种流式文档的生成方法、计算装置以及计算机可读介质 | |
CN116610731B (zh) | 一种大数据分布式存储方法、装置、电子设备及存储介质 | |
CN111259012B (zh) | 数据均匀化方法、装置、计算机设备及存储介质 | |
EP3249553A1 (en) | Worm hashing | |
CN116089367A (zh) | 动态分桶方法、装置、电子设备和介质 | |
CN115630595A (zh) | 逻辑电路的自动生成方法、装置、电子设备及存储介质 | |
CN112783574B (zh) | 应用程序开发方法、装置、设备和存储介质 | |
CN111639260B (zh) | 内容推荐方法及其装置、存储介质 | |
CN110321433B (zh) | 确定文本类别的方法及装置 | |
CN112835932A (zh) | 业务表的批量处理方法及装置、非易失性存储介质 | |
CN110162487A (zh) | 一种快速统计重复次数方法、装置及存储介质 | |
CN115454356B (zh) | 基于识别和聚合算法的数据文件处理方法、装置和设备 | |
CN105468603A (zh) | 数据选择方法及装置 | |
CN114185617B (zh) | 业务调用接口配置方法、装置、设备及存储介质 | |
CN113535838B (zh) | 一种基于二进制编码的数据交互方法及系统 | |
CN117271840B (zh) | 图数据库的数据查询方法、装置及电子设备 | |
CN117195978B (zh) | 模型压缩方法、训练方法、文本数据处理方法及装置 | |
CN112214509A (zh) | 数据检索方法、系统、终端设备及存储介质 | |
CN117857447A (zh) | 规则处理、规则查找方法、装置、设备及可读存储介质 | |
CN113849671A (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 |