CN105955986A - 一种字符的转换方法及装置 - Google Patents
一种字符的转换方法及装置 Download PDFInfo
- Publication number
- CN105955986A CN105955986A CN201610243297.3A CN201610243297A CN105955986A CN 105955986 A CN105955986 A CN 105955986A CN 201610243297 A CN201610243297 A CN 201610243297A CN 105955986 A CN105955986 A CN 105955986A
- Authority
- CN
- China
- Prior art keywords
- node
- converted
- word
- phonetic
- text
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明是关于一种字符的转换方法及装置,该方法包括:接收待转换文本;在三叉搜索树中确定与所述待转换文本对应的目标节点,所述三叉搜索树的节点中预先存储有词语与拼音的对应关系;在所述目标节点中提取所述待转换文本对应的词语或拼音;输出所述待转换文本对应的词语或拼音。在三叉搜索树中确定与待转换文本对应的目标节点的过程中,在三叉搜索树中每查找一次待转换文本对应的节点,均能减少一半的查询工作量,所以本发明提供的方案可以快速的查询到待转换文本对应的目标节点,并在该目标节点中得到待转换文本对应的词语或拼音,从而提高了查询效率。
Description
技术领域
本发明实施例涉及通信技术领域,更具体的说,涉及字符的转换方法及装置。
背景技术
目前,为了实现拼音与词语的相互转换,通常需要预先建立一个强大的词库,在词库中需要记录所有的词语与拼音的对应关系。其中,词语至少包括两个汉字。
在用户输入一组拼音时,服务器需要从头到尾遍历整个词库来查询该拼音对应的词语,所以服务器可能需要消耗较长时间才能够查询到该拼音对应的词语。同理,在用户输入词语时,服务器需要从头到尾遍历整个词库来查询该词语对应的拼音,所以服务器同样需要消耗较长时间才能够查询到该词语对应的拼音。所以上述利用词库的方式进行词语与拼音的转换,其查询效率非常低。
因此,如何提高拼音与词语相互转换的查询效率,成为目前亟需解决的技术问题。
发明内容
本发明提供一种字符的转换方法及装置,以提高查询的效率。
根据本发明实施例的第一方面,提供一种字符的转换方法,包括:
接收待转换文本,所述待转换文本为拼音或词语;
在三叉搜索树中确定与所述待转换文本对应的目标节点,所述三叉搜索树的节点中预先存储有词语与拼音的对应关系;
在所述目标节点中提取所述待转换文本对应的词语或拼音;
输出所述待转换文本对应的词语或拼音。
可选的,在所述接收待转换文本的步骤之后,所述方法还包括:
判断所述待转换文本是否可以被拆分成分词;
在所述待转换文本可以被拆分成分词时,利用分词算法对所述待转换文本进行拆分得到分词结果,在所述三叉搜索树中确定与所述分词结果中的分词对应的第一指定节点,提取所述第一指定节点中所述分词对应的词语或拼音,输出所述分词对应的词语或拼音;
在所述待转换文本不可被拆分成分词时,触发所述在三叉搜索树中确定与所述待转换文本对应的目标节点的步骤。
可选的,所述在三叉搜索树中确定与所述待转换文本对应的目标节点的步骤包括:
在所述待转换文本为一个词语时,在词语三叉搜索树的根节点和所述根节点的兄弟节点中确定与所述待转换文本中的首个汉字的ASCII码值相同的第二指定节点;
在所述第二指定节点的子节点中确定与所述待转换文本中的其余汉字的ASCII码值相同的第三指定节点;
将所述第三指定节点确定为目标节点,所述一个词语至少包括两个汉字。
可选的,所述在三叉搜索树中确定与所述待转换文本对应的目标节点的步骤包括:
在所述待转换文本为至少两组拼音时,在拼音三叉搜索树的根节点和所述根节点的兄弟节点中确定与所述待转换文本中的首组拼音相同的第四指定节点;
在所述第四指定节点的子节点中确定与所述待转换文本中的其余组拼音相同的第五指定节点;
将所述第五指定节点确定为目标节点,所述至少两组拼音中的每组拼音均对应一个汉字。
可选的,所述在三叉搜索树中确定与所述待转换文本对应的目标节点的步骤之前,所述方法还包括:
确定与标准词库中每个词语对应的ASCII码值;
根据ASCII码值的大小将所述标准词库中每个词语的首个汉字添加到所述三叉搜索树的根节点和所述根节点的兄弟节点中;
将所述标准词库中每个词语的非首个汉字和拼音添加到所述三叉搜索树的所述根节点的子节点中,以及所述根节点的兄弟节点的子节点中。
可选的,所述在三叉搜索树中确定与所述待转换文本对应的目标节点的步骤之前,所述方法还包括:
确定标准词库中每对拼音的首字母,其中,每组拼音至少包括一个拼音,每对拼音至少包括两组拼音,一组拼音对应一个汉字,一对拼音对应一个词语;
根据首字母的顺序将所述标准词库中每对拼音的首组拼音添加到所述三叉搜索树的根节点和所述根节点的兄弟节点中;
将所述标准词库中每对拼音的非首组拼音和每对拼音对应的词语添加到所述三叉搜索树的所述根节点的子节点中,以及所述根节点的兄弟节点的子节点中。
根据本发明实施例的第二方面,提供一种字符的转换装置,包括:
接收模块,用于接收待转换文本,所述待转换文本为拼音或词语;
第一确定模块,用于在三叉搜索树中确定与所述待转换文本对应的目标节点,所述三叉搜索树的节点中预先存储有词语与拼音的对应关系;
提取模块,用于在所述目标节点中提取所述待转换文本对应的词语或拼音;
输出模块,用于输出所述待转换文本对应的词语或拼音。
可选的,所述装置还包括:
判断模块,用于判断所述待转换文本是否可以被拆分成分词;
第一执行模块,用于在所述待转换文本可以被拆分成分词时,利用分词算法对所述待转换文本进行拆分得到分词结果,在所述三叉搜索树中确定与所述分词结果中的分词对应的第一指定节点,提取所述第一指定节点中所述分词对应的词语或拼音,输出所述分词对应的词语或拼音;
第二执行模块,用于在所述待转换文本不可被拆分成分词时,触发所述第一确定模块。
可选的,所述第一确定模块包括:
第一确定子模块,用于在所述待转换文本为一个词语时,在词语三叉搜索树的根节点和所述根节点的兄弟节点中确定与所述待转换文本中的首个汉字的ASCII码值相同的第二指定节点;
第二确定子模块,用于在所述第二指定节点的子节点中确定与所述待转换文本中的其余汉字的ASCII码值相同的第三指定节点;
第三确定子模块,用于将所述第三指定节点确定为目标节点,所述一个词语至少包括两个汉字。
可选的,所述第一确定模块包括:
第四确定子模块,用于在所述待转换文本为至少两组拼音时,在拼音三叉搜索树的根节点和所述根节点的兄弟节点中确定与所述待转换文本中的首组拼音相同的第四指定节点;
第五确定子模块,用于在所述第四指定节点的子节点中确定与所述待转换文本中的其余组拼音相同的第五指定节点;
第六确定子模块,用于将所述第五指定节点确定为目标节点,所述至少两组拼音中的每组拼音均对应一个汉字。
可选的,所述装置还包括:
第二确定模块,用于确定与标准词库中每个词语对应的ASCII码值;
第一添加模块,用于根据ASCII码值的大小将所述标准词库中每个词语的首个汉字添加到所述三叉搜索树的根节点和所述根节点的兄弟节点中;
第二添加模块,用于将所述标准词库中每个词语的非首个汉字和拼音添加到所述三叉搜索树的所述根节点的子节点中,以及所述根节点的兄弟节点的子节点中。
可选的,所述装置还包括:
第三确定模块,用于确定标准词库中每对拼音的首字母,其中,每组拼音至少包括一个拼音,每对拼音至少包括两组拼音,一组拼音对应一个汉字,一对拼音对应一个词语;
第三添加模块,用于根据首字母的顺序将所述标准词库中每对拼音的首组拼音添加到所述三叉搜索树的根节点和所述根节点的兄弟节点中;
第四添加模块,用于将所述标准词库中每对拼音的非首组拼音和每对拼音对应的词语添加到所述三叉搜索树的所述根节点的子节点中,以及所述根节点的兄弟节点的子节点中。
与现有技术相比,本实施例提供的技术方案具有以下优点和特点:
在本发明提供的方案中,在三叉搜索树的节点中会预先存储有词语与拼音的对应关系,在接收到待转换文本后,可以在三叉搜索树中确定与待转换文本对应的目标节点。如果待转换文本为拼音,那么可以在目标节点中提取与拼音对应的词语;如果待转换文本为词语,那么可以在目标节点中提取与词语对应的拼音,所以使得拼音与词语可以相互转换。在三叉搜索树中确定与待转换文本对应的目标节点的过程中,在三叉搜索树中每查找一次待转换文本对应的节点,均能减少一半的查询工作量,所以本发明提供的方案可以快速的查询到待转换文本对应的目标节点,并在该目标节点中得到待转换文本对应的词语或拼音,从而提高了查询效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种字符的转换方法的流程图。
图2为本发明实施例提供的词典三叉搜索树的示意图。
图3为本发明实施例提供的拼音三叉搜索树的示意图。
图4为本发明实施例提供的另一种字符的转换方法的流程图。
图5为本发明实施例提供的一种字符的转换装置的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的一种字符的转换方法的流程图。本发明实施例提供的字符的转换方法可以快速的在三叉搜索树中查询到待转换文本对应的目标节点,并在该目标节点中得到待转换文本对应的词语或拼音,从而提高了查询效率。该方法包括以下步骤。
步骤S11、接收待转换文本。
其中,本发明实施例提供的方法可以应用于可安装应用软件的终端内,终端可以为智能手机、平板电脑、笔记本电脑或台式电脑等设备。
本发明实施例适用的应用场景非常多。例如,本发明实施例可以应用在电子书内,用于对电子书内的拼音或词语进行相互转换;又如,本发明实施例可以应用在搜索引擎内,用于对搜索引擎的输入框内的拼音或词语进行相互转换。
当然,本发明实施例并不局限于上述提到的场景中,还可以应用在其他需要拼音或词语进行相互转换的场景中。
待转换文本既可以为词语的拼音的首字母,也可以为词语的拼音的全拼,还可以为一个词语。其中,一个词语至少包括两个汉字。
步骤S12、在三叉搜索树中确定与待转换文本对应的目标节点。
其中,在执行步骤S12之前,为了将词语转换为拼音,本发明实施例需要建立词语三叉搜索树,并将标准词库中的词语和与词语对应的拼音添加到词语三叉搜索树的节点中。同理,为了将拼音转换为词语,本发明实施例还需要建立拼音三叉搜索树,并将标准词库中的拼音和与拼音对应的词语添加到拼音三叉搜索树的节点中。
下面介绍建立词语三叉搜索树的方式。
建立词语三叉搜索树的方式包括以下步骤:首先,确定与标准词库中每个词语对应的ASCII码值;然后,根据ASCII码值的大小将标准词库中每个词语的首个汉字添加到词语三叉搜索树的根节点和根节点的兄弟节点中;最后,将标准词库中每个词语的非首个汉字和拼音添加到词语三叉搜索树的根节点的子节点中,以及根节点的兄弟节点的子节点中。
其中,词语三叉搜索树的根节点存储标准词库中每个词语的首个汉字的ASCII码值居中的汉字,小于该ASCII码值的首个汉字位于根节点的左侧分支,大于该ASCII码值的首个汉字位于根节点的右侧分支。
为了形象的说明上述建立词语三叉搜索树的过程,下面通过举例说明。
请参见表1所示,表1所示的为标准词库中存储的词语、该词语的拼音首字母和该词语的拼音全拼。
表1
例如,请参见图2所示,并结合表1所示,假设标准词库中存储词语“中国”、“民族”、“社会”、“群体”和“风格”,以及这些词语的拼音首字母和拼音全拼。假设标准词库中每个词语的首个汉字的ASCII码值由大到小的顺序为“群”、“风”、“中”、“社”和“民”,将标准词库的词语中首个汉字的ASCII码值居中的汉字“中”添加到词语三叉搜索树的根节点中,并将ASCII码值大于“中”的“群”和“风”添加到根节点的右侧分支,由于“群”的ASCII码值大于“风”的ASCII码值,所以将“群”添加到“风”所在节点的右侧分支。再将ASCII码值小于“中”的“民”和“社”添加到根节点的左侧分支,由于“社”的ASCII码值大于“民”的ASCII码值,所以将“社”添加到“民”所在节点的右侧分支。最后,将标准词库中每个词语的非首个汉字和拼音“国,zg,zhongguo”、“族,mz,minzu”、“格,fg,fengge”、“体,qt,qunti”和“会,sh,shehui”分别添加到词语三叉搜索树的根节点的子节点中,以及根节点的兄弟节点的子节点中。
下面介绍建立拼音三叉搜索树的方式。
建立拼音三叉搜索树的方式包括以下步骤:首先,确定标准词库中每对拼音的首字母,其中,每组拼音至少包括一个拼音,每对拼音至少包括两组拼音,一组拼音对应一个汉字,一对拼音对应一个词语;然后,根据首字母的顺序将标准词库中每对拼音的首组拼音添加到拼音三叉搜索树的根节点和根节点的兄弟节点中;最后,将标准词库中每对拼音的非首组拼音和每对拼音对应的词语添加到拼音三叉搜索树的根节点的子节点中,以及根节点的兄弟节点的子节点中。
其中,拼音三叉搜索树的根节点存储标准词库中首字母居中的一对拼音的首组拼音,字母顺序小于该根节点存储的首字母的其他对拼音的首组拼音位于根节点的左侧分支,字母顺序大于该根节点存储的首字母的其他对拼音的首组拼音位于根节点的右侧分支。
为了形象的说明上述建立拼音三叉搜索树的过程,下面通过举例说明。
例如,请参见图3所示,并结合表1所示,假设标准词库中存储词语“中国”、“民族”、“社会”、“群体”和“风格”,以及这些词语的拼音首字母和拼音全拼。由于标准词库中每对拼音的首字母由大到小的顺序为“z”、“s”、“q”、“m”和“f”,所以将首字母居中的“q”对应的一对拼音“qunti”的首组拼音“qun”添加到拼音三叉搜索树的根节点中,由于“zhong”的首字母的字母顺序大于“she”的首字母的字母顺序,所以将“zhong”添加到“she”所在节点的右侧分支。由于“min”的首字母的字母顺序大于“feng”的首字母的字母顺序,所以将“min”添加到“feng”所在节点的右侧分支。最后,将标准词库中每对拼音的非首组拼音和每对拼音对应的词语“guo,zg,中国”、“hui,sh,社会”、“ti,qt,群体”、“zu,mz,民族”和“ge,fg,风格”添加到拼音三叉搜索树的根节点的子节点中,以及根节点的兄弟节点的子节点中。
由于标准词库通常包括5至6千个词语及其拼音,上述例子仅为说明本发明实施例的原理,所以未将标准词库中5至6千个词语及其拼音全部写出来。
在三叉搜索树建立完成以后,便可以在三叉搜索树中确定与待转换文本对应的目标节点。下面简要介绍一下在三叉搜索树中确定与待转换文本对应的目标节点的过程。
如果待转换文本为一个词语,那么需要利用上述提到的词语三叉搜索树进行确定,在词语三叉搜索树中确定与待转换文本对应的目标节点的步骤为:首先,在待转换文本为一个词语时,在词语三叉搜索树的根节点和根节点的兄弟节点中确定与待转换文本中的首个汉字的ASCII码值相同的第二指定节点。然后,在第二指定节点的子节点中确定与待转换文本中的其余汉字的ASCII码值相同的第三指定节点。最后,将第三指定节点确定为目标节点,一个词语至少包括两个汉字。
为了形象的说明上述在词语三叉搜索树中确定与待转换文本对应的目标节点的过程,下面通过举例说明。
例如,请参见图2所示,并结合表1所示,已经预先建立好词语三叉搜索树,标准词库中每个词语的首个汉字的ASCII码值由大到小的顺序为“群”、“风”、“中”、“社”和“民”。假设待转换文本为词语“风格”,那么先比较“风”的ASCII码值与词语三叉搜索树的根节点存储的“中”的ASCII码值,由于“风”的ASCII码值大于“中”的ASCII码值,所以继续向根节点的右兄弟节点进行比较。由于待转换文本中的首个汉字“风”的ASCII码值与根节点的右兄弟节点存储的“风”的ASCII码值相同,所以继续比较待转换文本中的第二个汉字“格”的ASCII码值与根节点的右兄弟节点的子节点存储的“格”的ASCII码值是否相同。由于待转换文本中的第二个汉字“格”的ASCII码值与根节点的右兄弟节点的子节点存储的“格”的ASCII码值相同,所以便可以将根节点的右兄弟节点的子节点确定为目标节点,以便于可以从目标节点中提取待转换文本“风格”对应的拼音全拼“fengge”和拼音首字母“fg”。
如果待转换文本为一个拼音,那么需要利用上述提到的拼音三叉搜索树进行确定,在拼音三叉搜索树中确定与待转换文本对应的目标节点的步骤为:首先,在待转换文本为至少两组拼音时,在拼音三叉搜索树的根节点和根节点的兄弟节点中确定与待转换文本中的首组拼音相同的第四指定节点。在第四指定节点的子节点中确定与待转换文本中的其余组拼音相同的第五指定节点。将第五指定节点确定为目标节点,至少两组拼音中的每组拼音均对应一个汉字。
为了形象的说明上述在拼音三叉搜索树中确定与待转换文本对应的目标节点的过程,下面通过举例说明。
例如,请参见图3所示,并结合表1所示,已经预先建立好拼音三叉搜索树,标准词库中每对拼音的首字母由大到小的顺序为“z”、“s”、“q”、“m”和“f”。假设待转换文本为拼音“fengge”,那么先比较待转换文本中的首组拼音的首字母“f”与拼音三叉搜索树的根节点存储的拼音首字母“q”的字母顺序,由于“f”的字母顺序小于“q”的字母顺序,所以继续向根节点的左兄弟节点进行比较。由于待转换文本中的首组拼音的首字母“f”与根节点的左兄弟节点存储的拼音首字母“f”的字母顺序相同,所以继续比较待转换文本中的首组拼音“feng”与根节点的左兄弟节点存储的拼音“feng”是否相同。由于相同,所以继续比较较待转换文本中的第二组拼音“ge”与根节点的左兄弟节点的子节点存储的拼音是否相同。由于相同,所以便可以将根节点的左兄弟节点的子节点确定为目标节点,以便于可以从目标节点中提取待转换文本“fengge”对应的词语“风格”和拼音首字母“fg”。
步骤S13、在目标节点中提取待转换文本对应的词语或拼音。
其中,在三叉搜索树中确定与待转换文本对应的目标节点以后,便可以在目标节点中提取待转换文本对应的词语或拼音。如果待转换文本为词语,那么便可以在目标节点中提取待转换文本对应的拼音;如果待转换文本为拼音,那么便可以在目标节点中提取待转换文本对应的词语。
如果待转换文本为拼音,而且该拼音可以对应多个词语,那么需要使用以下步骤在目标节点中提取待转换文本对应的词语:首先,在目标节点中含有至少两组词语时,确定目标节点中的每个词语的使用频率。然后,按照使用频率对目标节点中的每个词语进行排序,得到排序结果。最后,提取排序结果中的每个词语。
其中,如果目标节点中含有至少两组词语,那么需要确定出这些词语的使用频率,并根据使用频率来排序,最终提取出排序后的词语,从而使得用户可以看到这些词语按照使用频率由高到低进行排序后的效果,所以用户可以快速的定位到使用频率高的词语。
如果待转换文本为词语,而且该词语可以对应至少两组拼音,那么需要使用以下步骤在目标节点中提取待转换文本对应的拼音:首先,在目标节点中含有至少两组拼音时,确定目标节点中的每组拼音的使用频率,至少两组拼音中的每组拼音均对应一个汉字。然后,按照使用频率对目标节点中的每组拼音进行排序,得到排序结果。最后,提取排序结果中的每组拼音。
其中,如果目标节点中含有至少两组拼音,那么需要确定出每组拼音的使用频率,并根据使用频率来排序,最终提取出排序后的每组拼音,从而使得用户可以看到这些组拼音按照使用频率由高到低进行排序后的效果,所以用户可以快速的定位到使用频率高的拼音。
步骤S14、输出待转换文本对应的词语或拼音。
其中,在目标节点中提取待转换文本对应的词语或拼音以后,便可以输出待转换文本对应的词语或拼音,以便于用户能够看到待转换文本对应的词语或拼音。
在图1所示的实施例中,在三叉搜索树的节点中会预先存储有词语与拼音的对应关系,在接收到待转换文本后,可以在三叉搜索树中确定与待转换文本对应的目标节点。如果待转换文本为拼音,那么可以在目标节点中提取与拼音对应的词语;如果待转换文本为词语,那么可以在目标节点中提取与词语对应的拼音,所以使得拼音与词语可以相互转换。在三叉搜索树中确定与待转换文本对应的目标节点的过程中,在三叉搜索树中每查找一次待转换文本对应的节点,均能减少一半的查询工作量,所以本发明提供的方案可以快速的查询到待转换文本对应的目标节点,并在该目标节点中得到待转换文本对应的词语或拼音,从而提高了查询效率。
请参见图4所示,在本发明的另一些实施例中,本发明实施例提供的方法还可以包括以下步骤:
步骤S15、判断待转换文本是否可以被拆分成分词。在待转换文本可以被拆分成分词时,触发步骤S16;在待转换文本不可被拆分成分词时,触发步骤S12。
步骤S16、利用分词算法对待转换文本进行拆分得到分词结果,在三叉搜索树中确定与分词结果中的分词对应的第一指定节点,提取第一指定节点中分词对应的词语或拼音,输出分词对应的词语或拼音。
其中,分词算法存在很多种,例如,分词算法可以为逆向最大匹配,分词算法还可以为正向最大减字,当然,也可以为其他的分词算法,本发明并不局限分词算法的种类。
在某些情况下,待转换文本中的词语或句子可能会非常的长,如果在三叉搜索树中确定待转换文本对应的目标节点,那么会导致查询效率低下。所以需要利用分词算法将较长的词语或一句话拆分成不可再分的分词,从而提高在三叉搜索树中确定到与待转换文本对应的目标节点的效率。
在获取到待转换文本以后,需要判断待转换文本是否为可以被拆分成分词。如果待转换文本为可以被拆分的词语,那么便可以利用分词算法对待转换文本进行拆分得到分词结果,并在三叉搜索树中确定与分词结果中的分词对应的第一指定节点,提取第一指定节点中分词对应的拼音,输出分词对应的拼音。如果待转换文本为不可以被拆分的词语,那么便可以触发步骤S12,直接在三叉搜索树中确定与分词结果中的分词对应的第一指定节点。
同理,如果待转换文本为可以被拆分的拼音,那么便可以利用分词算法对待转换文本进行拆分得到分词结果,并在三叉搜索树中确定与分词结果中的分词对应的第一指定节点,提取第一指定节点中分词对应的词语,最后输出分词对应的词语。
图5为本发明实施例提供的一种字符的转换装置的示意图。参照图5,该装置包括接收模块11、第一确定模块12、提取模块13和输出模块14,其中:
接收模块11,用于接收待转换文本,待转换文本为拼音或词语。
第一确定模块12,用于在三叉搜索树中确定与待转换文本对应的目标节点,三叉搜索树的节点中预先存储有词语与拼音的对应关系。
提取模块13,用于在目标节点中提取待转换文本对应的词语或拼音。
输出模块14,用于输出待转换文本对应的词语或拼音。
可选的,本发明实施例提供的字符的转换装置还可以包括以下模块:判断模块,用于判断待转换文本是否可以被拆分成分词。第一执行模块,用于在待转换文本可以被拆分成分词时,利用分词算法对待转换文本进行拆分得到分词结果,在三叉搜索树中确定与分词结果中的分词对应的第一指定节点,提取第一指定节点中分词对应的词语或拼音,输出分词对应的词语或拼音。第二执行模块,用于在待转换文本不可被拆分成分词时,触发第一确定模块12。
可选的,上述第一确定模块12还可以包括以下子模块:第一确定子模块,用于在待转换文本为一个词语时,在三叉搜索树的根节点和根节点的兄弟节点中确定与待转换文本中的首个汉字的ASCII码值相同的第二指定节点。第二确定子模块,用于在第二指定节点的子节点中确定与待转换文本中的其余汉字的ASCII码值相同的第三指定节点。第三确定子模块,用于将第三指定节点确定为目标节点,一个词语至少包括两个汉字。
可选的,上述第一确定模块12还可以包括以下子模块:第四确定子模块,用于在待转换文本为至少两组拼音时,在三叉搜索树的根节点和根节点的兄弟节点中确定与待转换文本中的首组拼音相同的第四指定节点。第五确定子模块,用于在第四指定节点的子节点中确定与待转换文本中的其余组拼音相同的第五指定节点。第六确定子模块,用于将第五指定节点确定为目标节点,至少两组拼音中的每组拼音均对应一个汉字。
可选的,本发明实施例提供的字符的转换装置还可以包括以下模块:第二确定模块,用于确定与标准词库中每个词语对应的ASCII码值。第一添加模块,用于根据ASCII码值的大小将标准词库中每个词语的首个汉字添加到三叉搜索树的根节点和根节点的兄弟节点中。第二添加模块,用于将标准词库中每个词语的非首个汉字和拼音添加到三叉搜索树的根节点的子节点中,以及根节点的兄弟节点的子节点中。
可选的,本发明实施例提供的字符的转换装置还可以包括以下模块:第三确定模块,用于确定标准词库中每对拼音的首字母,其中,每组拼音至少包括一个拼音,每对拼音至少包括两组拼音,一组拼音对应一个汉字,一对拼音对应一个词语。第三添加模块,用于根据首字母的顺序将标准词库中每对拼音的首组拼音添加到三叉搜索树的根节点和根节点的兄弟节点中。第四添加模块,用于将标准词库中每对拼音的非首组拼音和每对拼音对应的词语添加到三叉搜索树的根节点的子节点中,以及根节点的兄弟节点的子节点中。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (12)
1.一种字符的转换方法,其特征在于,包括:
接收待转换文本,所述待转换文本为拼音或词语;
在三叉搜索树中确定与所述待转换文本对应的目标节点,所述三叉搜索树的节点中预先存储有词语与拼音的对应关系;
在所述目标节点中提取所述待转换文本对应的词语或拼音;
输出所述待转换文本对应的词语或拼音。
2.根据权利要求1所述的字符的转换方法,其特征在于,在所述接收待转换文本的步骤之后,所述方法还包括:
判断所述待转换文本是否可以被拆分成分词;
在所述待转换文本可以被拆分成分词时,利用分词算法对所述待转换文本进行拆分得到分词结果,在所述三叉搜索树中确定与所述分词结果中的分词对应的第一指定节点,提取所述第一指定节点中所述分词对应的词语或拼音,输出所述分词对应的词语或拼音;
在所述待转换文本不可被拆分成分词时,触发所述在三叉搜索树中确定与所述待转换文本对应的目标节点的步骤。
3.根据权利要求1所述的字符的转换方法,其特征在于,所述在三叉搜索树中确定与所述待转换文本对应的目标节点的步骤包括:
在所述待转换文本为一个词语时,在词语三叉搜索树的根节点和所述根节点的兄弟节点中确定与所述待转换文本中的首个汉字的ASCII码值相同的第二指定节点;
在所述第二指定节点的子节点中确定与所述待转换文本中的其余汉字的ASCII码值相同的第三指定节点;
将所述第三指定节点确定为目标节点,所述一个词语至少包括两个汉字。
4.根据权利要求1所述的字符的转换方法,其特征在于,所述在三叉搜索树中确定与所述待转换文本对应的目标节点的步骤包括:
在所述待转换文本为至少两组拼音时,在拼音三叉搜索树的根节点和所述根节点的兄弟节点中确定与所述待转换文本中的首组拼音相同的第四指定节点;
在所述第四指定节点的子节点中确定与所述待转换文本中的其余组拼音相同的第五指定节点;
将所述第五指定节点确定为目标节点,所述至少两组拼音中的每组拼音均对应一个汉字。
5.根据权利要求1所述的字符的转换方法,其特征在于,所述在三叉搜索树中确定与所述待转换文本对应的目标节点的步骤之前,所述方法还包括:
确定与标准词库中每个词语对应的ASCII码值;
根据ASCII码值的大小将所述标准词库中每个词语的首个汉字添加到所述三叉搜索树的根节点和所述根节点的兄弟节点中;
将所述标准词库中每个词语的非首个汉字和拼音添加到所述三叉搜索树的所述根节点的子节点中,以及所述根节点的兄弟节点的子节点中。
6.根据权利要求1所述的字符的转换方法,其特征在于,所述在三叉搜索树中确定与所述待转换文本对应的目标节点的步骤之前,所述方法还包括:
确定标准词库中每对拼音的首字母,其中,每组拼音至少包括一个拼音,每对拼音至少包括两组拼音,一组拼音对应一个汉字,一对拼音对应一个词语;
根据首字母的顺序将所述标准词库中每对拼音的首组拼音添加到所述三叉搜索树的根节点和所述根节点的兄弟节点中;
将所述标准词库中每对拼音的非首组拼音和每对拼音对应的词语添加到所述三叉搜索树的所述根节点的子节点中,以及所述根节点的兄弟节点的子节点中。
7.一种字符的转换装置,其特征在于,包括:
接收模块,用于接收待转换文本,所述待转换文本为拼音或词语;
第一确定模块,用于在三叉搜索树中确定与所述待转换文本对应的目标节点,所述三叉搜索树的节点中预先存储有词语与拼音的对应关系;
提取模块,用于在所述目标节点中提取所述待转换文本对应的词语或拼音;
输出模块,用于输出所述待转换文本对应的词语或拼音。
8.根据权利要求7所述的字符的转换装置,其特征在于,所述装置还包括:
判断模块,用于判断所述待转换文本是否可以被拆分成分词;
第一执行模块,用于在所述待转换文本可以被拆分成分词时,利用分词算法对所述待转换文本进行拆分得到分词结果,在所述三叉搜索树中确定与所述分词结果中的分词对应的第一指定节点,提取所述第一指定节点中所述分词对应的词语或拼音,输出所述分词对应的词语或拼音;
第二执行模块,用于在所述待转换文本不可被拆分成分词时,触发所述第一确定模块。
9.根据权利要求7所述的字符的转换装置,其特征在于,所述第一确定模块包括:第一确定子模块,用于在所述待转换文本为一个词语时,在词语三叉搜索树的根节点和所述根节点的兄弟节点中确定与所述待转换文本中的首个汉字的ASCII码值相同的第二指定节点;
第二确定子模块,用于在所述第二指定节点的子节点中确定与所述待转换文本中的其余汉字的ASCII码值相同的第三指定节点;
第三确定子模块,用于将所述第三指定节点确定为目标节点,所述一个词语至少包括两个汉字。
10.根据权利要求7所述的字符的转换装置,其特征在于,所述第一确定模块包括:
第四确定子模块,用于在所述待转换文本为至少两组拼音时,在拼音三叉搜索树的根节点和所述根节点的兄弟节点中确定与所述待转换文本中的首组拼音相同的第四指定节点;
第五确定子模块,用于在所述第四指定节点的子节点中确定与所述待转换文本中的其余组拼音相同的第五指定节点;
第六确定子模块,用于将所述第五指定节点确定为目标节点,所述至少两组拼音中的每组拼音均对应一个汉字。
11.根据权利要求7所述的字符的转换装置,其特征在于,所述装置还包括:
第二确定模块,用于确定与标准词库中每个词语对应的ASCII码值;
第一添加模块,用于根据ASCII码值的大小将所述标准词库中每个词语的首个汉字添加到所述三叉搜索树的根节点和所述根节点的兄弟节点中;
第二添加模块,用于将所述标准词库中每个词语的非首个汉字和拼音添加到所述三叉搜索树的所述根节点的子节点中,以及所述根节点的兄弟节点的子节点中。
12.根据权利要求7所述的字符的转换装置,其特征在于,所述装置还包括:
第三确定模块,用于确定标准词库中每对拼音的首字母,其中,每组拼音至少包括一个拼音,每对拼音至少包括两组拼音,一组拼音对应一个汉字,一对拼音对应一个词语;
第三添加模块,用于根据首字母的顺序将所述标准词库中每对拼音的首组拼音添加到所述三叉搜索树的根节点和所述根节点的兄弟节点中;
第四添加模块,用于将所述标准词库中每对拼音的非首组拼音和每对拼音对应的词语添加到所述三叉搜索树的所述根节点的子节点中,以及所述根节点的兄弟节点的子节点中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610243297.3A CN105955986A (zh) | 2016-04-18 | 2016-04-18 | 一种字符的转换方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610243297.3A CN105955986A (zh) | 2016-04-18 | 2016-04-18 | 一种字符的转换方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105955986A true CN105955986A (zh) | 2016-09-21 |
Family
ID=56917672
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610243297.3A Pending CN105955986A (zh) | 2016-04-18 | 2016-04-18 | 一种字符的转换方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105955986A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106897257A (zh) * | 2017-02-23 | 2017-06-27 | 郑州云海信息技术有限公司 | 一种基于linux平台的ascii码和字符串的转换方法及装置 |
CN111737986A (zh) * | 2020-05-15 | 2020-10-02 | 深圳市世强元件网络有限公司 | 一种基于多叉树的搜索词推荐方法及*** |
CN113641731A (zh) * | 2021-08-17 | 2021-11-12 | 成都知道创宇信息技术有限公司 | 模糊搜索优化方法、装置、电子设备和可读存储介质 |
US11947608B2 (en) | 2020-05-15 | 2024-04-02 | Shenzhen Sekorm Component Network Co., Ltd | Search term recommendation method and system based on multi-branch tree |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521418A (zh) * | 2011-12-31 | 2012-06-27 | 青岛海信宽带多媒体技术有限公司 | 用于存储拼音的存储结构及拼音输入方法 |
CN102867049A (zh) * | 2012-09-10 | 2013-01-09 | 山东康威通信技术股份有限公司 | 一种基于单词查找树实现的汉语拼音快速分词方法 |
CN102866781A (zh) * | 2011-07-06 | 2013-01-09 | 哈尔滨工业大学 | 一种音字转换方法和*** |
CN103823814A (zh) * | 2012-11-19 | 2014-05-28 | 腾讯科技(深圳)有限公司 | 一种信息处理方法及装置 |
CN104252484A (zh) * | 2013-06-28 | 2014-12-31 | 重庆新媒农信科技有限公司 | 一种拼音纠错方法及*** |
CN104268157A (zh) * | 2014-09-03 | 2015-01-07 | 乐视网信息技术(北京)股份有限公司 | 一种数据搜索中的纠错装置及其方法 |
-
2016
- 2016-04-18 CN CN201610243297.3A patent/CN105955986A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102866781A (zh) * | 2011-07-06 | 2013-01-09 | 哈尔滨工业大学 | 一种音字转换方法和*** |
CN102521418A (zh) * | 2011-12-31 | 2012-06-27 | 青岛海信宽带多媒体技术有限公司 | 用于存储拼音的存储结构及拼音输入方法 |
CN102867049A (zh) * | 2012-09-10 | 2013-01-09 | 山东康威通信技术股份有限公司 | 一种基于单词查找树实现的汉语拼音快速分词方法 |
CN103823814A (zh) * | 2012-11-19 | 2014-05-28 | 腾讯科技(深圳)有限公司 | 一种信息处理方法及装置 |
CN104252484A (zh) * | 2013-06-28 | 2014-12-31 | 重庆新媒农信科技有限公司 | 一种拼音纠错方法及*** |
CN104268157A (zh) * | 2014-09-03 | 2015-01-07 | 乐视网信息技术(北京)股份有限公司 | 一种数据搜索中的纠错装置及其方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106897257A (zh) * | 2017-02-23 | 2017-06-27 | 郑州云海信息技术有限公司 | 一种基于linux平台的ascii码和字符串的转换方法及装置 |
CN111737986A (zh) * | 2020-05-15 | 2020-10-02 | 深圳市世强元件网络有限公司 | 一种基于多叉树的搜索词推荐方法及*** |
US11947608B2 (en) | 2020-05-15 | 2024-04-02 | Shenzhen Sekorm Component Network Co., Ltd | Search term recommendation method and system based on multi-branch tree |
CN113641731A (zh) * | 2021-08-17 | 2021-11-12 | 成都知道创宇信息技术有限公司 | 模糊搜索优化方法、装置、电子设备和可读存储介质 |
CN113641731B (zh) * | 2021-08-17 | 2023-05-02 | 成都知道创宇信息技术有限公司 | 模糊搜索优化方法、装置、电子设备和可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103268313B (zh) | 一种自然语言的语义解析方法及装置 | |
CN107291783B (zh) | 一种语义匹配方法及智能设备 | |
CN103456297B (zh) | 一种语音识别匹配的方法和设备 | |
CN104238991B (zh) | 语音输入匹配方法及装置 | |
CN102236423B (zh) | 一种字符自动补充的方法、装置和输入法*** | |
CN102254557B (zh) | 基于自然语音识别的导航方法和*** | |
CN102915299B (zh) | 一种分词方法及装置 | |
CN108446316B (zh) | 联想词的推荐方法、装置、电子设备及存储介质 | |
AUPR824301A0 (en) | Methods and systems (npw001) | |
CN105955986A (zh) | 一种字符的转换方法及装置 | |
US20150154295A1 (en) | Searching method, system and storage medium | |
CN102968987A (zh) | 一种语音识别方法及*** | |
CN103376909B (zh) | 输入法中调整候选词顺序的方法和*** | |
CN103838718A (zh) | 一种翻译***及翻译方法 | |
EP3916579A1 (en) | Method for resource sorting, method for training sorting model and corresponding apparatuses | |
CN106205613B (zh) | 一种导航语音识别方法及*** | |
CN101634927A (zh) | 一种字符输入过程中展现候选项的方法及装置 | |
CN105404677A (zh) | 一种基于树形结构的检索方法 | |
CN104915458B (zh) | 一种在用户搜索应用时自动联想的方法、***及移动终端 | |
CN103389976A (zh) | 用于终端的搜索方法及*** | |
CN112541109B (zh) | 答案摘要抽取方法及装置、电子设备、可读介质、产品 | |
CN112148895B (zh) | 检索模型的训练方法、装置、设备和计算机存储介质 | |
CN113360685A (zh) | 笔记内容处理方法、装置、设备和介质 | |
CN111339314B (zh) | 一种三元组数据的生成方法、装置和电子设备 | |
CN105808688A (zh) | 基于人工智能的补全检索方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160921 |
|
WD01 | Invention patent application deemed withdrawn after publication |