首页> 中国专利> 一种维吾尔语拼写检查方法及装置

一种维吾尔语拼写检查方法及装置

摘要

本发明公开了一种维吾尔语拼写检查方法及装置,本发明基于维吾尔语的基本区编码矩阵及扩展区编码矩阵,通过选型算法结合维吾尔词库,实现对维吾尔语字符串的高效的拼写检查及纠错,解决了维吾尔语在拼写检查上的盲区,有利于提高维吾尔语输入的正确率、准确率。

著录项

  • 公开/公告号CN104933030A

    专利类型发明专利

  • 公开/公告日2015-09-23

    原文格式PDF

  • 申请/专利权人 中通服公众信息产业股份有限公司;

    申请/专利号CN201510359706.1

  • 申请日2015-06-25

  • 分类号

  • 代理机构北京汇泽知识产权代理有限公司;

  • 代理人张瑾

  • 地址 830000 新疆维吾尔自治区乌鲁木齐市黄河路191号

  • 入库时间 2023-12-18 11:00:03

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-03-09

    授权

    授权

  • 2015-10-21

    实质审查的生效 IPC(主分类):G06F17/27 申请日:20150625

    实质审查的生效

  • 2015-09-23

    公开

    公开

说明书

技术领域

本发明涉及维吾尔语计算机处理技术领域,尤其涉及一种维吾尔语拼写检 查方法及装置。

背景技术

在英文、中文等语言输入法出现后不久开始陆续地出现语言拼写检查软件, 这些软件也给办公带来了很多方便。这些软件对用户输入的单词与事先制作好 的词库进行比较,当用户输入的词为错误的词(不存在于词库中)的时候,该 软件会标记出该词,并根据语法、语义给出与输入的拼写或书写错误的词最接 近的词,用户可以通过工具栏更正错别词选项,根据软件所提供的最接近词来 进行替换。在制作词库的时候,开发人员将一个个单词词条系统的收集成库, 并以此为依据对用户输入的词进行拼写检查。

但维吾尔文有32个语义字母(或称为名义字母),大部分的语义字母有 四种写法,四种写法分别对应字母在句首、句中、句尾以及单独出现时的书 写方式。由于维吾尔文的特殊性,上述语言文字的拼写检查方法并不能适用 于维吾尔文。

发明内容

有鉴于此,本发明提供一种维吾尔语拼写检查方法及装置,以实现高效地 对计算设备中的维吾尔语字符串进行拼写检查及纠错的目的。

为实现上述发明目的,基于本发明实施例,提供一种维吾尔语拼写检查方 法,所述方法包括:

获取以基本区编码组成的待检查单词;

基于维吾尔语基本区编码矩阵和扩展区编码矩阵,调用选型算法对待检 查单词进行字形正确性的检查,若检查通过,则进一步基于维吾尔语词库, 对待检查单词进行拼写正确性的检查;

若字形正确性的检查或拼写正确性的检查未通过,则返回当前待检查单 词的拼写检查未通过的错误信息。

为实现上述发明目的,基于本发明实施例,提供一种维吾尔语拼写检查 装置,所述装置包括:

获取模块,用于获取以基本区编码组成的待检查单词;

字形正确性检查模块,用于基于维吾尔语基本区编码矩阵和扩展区编码 矩阵,调用选型算法对待检查单词进行字形正确性的检查;

拼写正确性检查模块,用于基于维吾尔语词库,对待检查单词进行拼写 正确性的检查;

反馈模块,用于在字形正确性的检查或拼写正确性的检查未通过时,返 回当前待检查单词的拼写检查未通过的错误信息。

本发明基于维吾尔语的基本区编码矩阵及扩展区编码矩阵,通过选型算 法结合维吾尔词库,实现对维吾尔语字符串的高效的拼写检查及纠错,解决 了维吾尔语在拼写检查上的盲区,有利于提高维吾尔语输入的正确率、准确 率。

附图说明

图1为本发明实施例提供的一种维吾尔文拼写检查方法的步骤流程示意 图;

图2为本发明实施例提供的一种采用最小编辑距离算法从词库中提取与 拼写错误的单词编辑距离最小的一个或多个可替换单词步骤流程示意图;

图3为本发明实施例提供的一种维吾尔文拼写检查装置的结构示意图。

具体实施方式

为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图对本 申请所述方案作进一步地详细说明。下面的描述涉及附图时,除非另有表示, 不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述 的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如 所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

维吾尔语作为一种自然语言,具有自然语言共有的一些规则,但维吾尔语 有其不同于其它语言的独特的词法特点,因此,在对维吾尔语词句进行拼写检 查时,不能使用现有的中英文拼写检查方法。

维吾尔语总共有32个字母,对于维吾尔语的大多数字母来说,一个字母在 单词中的不同位置出现,其书写的形式是不同的,根据维吾尔语的字符集编码 规则,维吾尔语的字符集分为基本区编码矩阵和扩展区编码矩阵,其中,基本 区编码对应每个字母的语义字母,扩展区编码对应每个字母在单词中不同位置 的显示字母。

维吾尔语文字在计算机中存储及在网络上传输时,都使用基本区编码,而 在输出显示时,为了符合维吾尔文字的书写习惯,需要根据维吾尔文的书写习 惯,对字母进行选型处理,即根据语义字母在单词中的位置从扩展区编码矩阵 中选择对应的正确的字母形态即字形以组成输出显示的单词。

基本区编码矩阵及扩展区编码矩阵的示例如下表1所示:

表1

维吾尔语字符集中,基本区编码矩阵为32行1列,由语义字母对应的基本 区编码依据编码顺序构成。扩展区编码矩阵为32行4列,由显示字母对应的扩 展区编码依据编码顺序构成,扩展区编码矩阵的每一行分别与基本区编码矩阵 中的基本区编码一一对应,每一行的4列分别为对应语义字母在词首、词中、 词尾及单独出现时对应的扩展区编码。

以表1的编码矩阵为例,在基本区编码矩阵中,有些编码作为保留编码未 使用,因此会出现编码不连续的情况,在表中以省略符“…”来标识,这些不 连续区域的编码在具体的程序实现时可以将其值置为NULL或0,来表示没有对 应的基本区编码或该基本区编码未使用。在扩展区编码矩阵中,如果对应基本 区编码的值为NULL或0,则对应的扩展区编码矩阵中的编码值也为NULL或0; 若对应的基本区编码的值不为NULL或0,则大部分的语义字母都存在四种字形, 四种字形分别对应扩展区编码矩阵中的四个编码,例如基本区编码06D5对应的 四种字形的扩展区编码分别为FBEC、FEE9、FBED、FEBA。根据维文的书写 习惯和编码规则,某些语义字母在显示时,需要将两个扩展区编码对应的字形 组合在一起显示才能表达正确的含义或符合维文的书写习惯,因此在本发明实 施例给出的扩展区编码矩阵中,某些行会出现两个扩展区编码同时出现在一个 矩阵单元中的情况,例如,基本区编码0649对应的行下标与扩展区编码矩阵中 首部字形所在的列下标所对应的矩阵单元中,存储了FBFB和FBE8两个扩展区 编码,即表示当基本区编码0649对应的语义字母出现在词的首部的时候,需要 将FBFB和FBE8两个扩展区编码同时显示才能表达正确的含义或符合维文的正 确的书写习惯。

此外,本发明提供的扩展区编码矩阵,还用于对语义字母关联合法性的检 测。在维吾尔文里,根据维吾尔文的语法规则,有些语义字母是不能相互关联, 例如某些语义字母没有对应的扩展区编码矩阵中的某个或某些字形,以语义字 母对应的基本区编码06C9为例,其对应的扩展区编码中,没有对应的首部 和中部字形(对应字形位置的编码为NULL或0),只有独立字形编码FBDB 和尾部字形编码FBDF因此,当检测到该语义字母的基本区编码出 现在一次词的首部或中部时,说明是拼写错误。

基于维吾尔文特有的字符编码规则,本发明提出一种维吾尔文拼写检查方 法及装置,以下结合附图示例对本发明做详细描述。

图1为本发明实施例提供的一种维吾尔文拼写检查方法的步骤流程示意图, 该方法包括如下步骤:

步骤101、获取以基本区编码组成的待检查单词;

本发明实施例可以对一整篇文章进行拼写检查,也可以实时对用户输入的 单词进行拼写检查,基于的原理类似。

以对一个包含维吾尔文词句的长字符串进行拼写检查为例,具体过程可以 为:

获取以基本区编码组成的原始待检查字符串,使用提取函数提取原始待检 查字符串中的单词;

首先,读取以基本区编码组成的待进行拼写检查的原始字符串,然后调用 单词劈分split函数,提取原始待检查字符串中的单词,从而获得以基本区编码 组成的待检查单词列表。例如,原始待检查字符串为以空格为间隔 符劈分成一组待检查单词分别为然后再对这些待检查单词 逐一进行拼写检查。

步骤102、基于维吾尔语基本区编码矩阵和扩展区编码矩阵,调用选型算法 对待检查单词进行字形正确性的检查,若检查通过,则执行步骤103,否则执行 步骤104;

本发明实施例中所述的调用选型算法对待检查单词进行字形正确性的检查 过程可以为:

步骤a、依次获取当前待检查单词中的以基本区编码表征的语义字母,获取 当前语义字母在当前待检查单词中的字形位置;

以“This”为当前待检查单词为例,若当前语义字母为“T”,则当前语义字 母在当前待检查单词中的字形位置为1,对应首部字形的列下标;若当前语义字 母为“h”,则当前语义字母在当前待检查单词中的字形位置为2,对应中部字形 的列下标;若当前语义字母为“s”,则当前语义字母在当前待检查单词中的字形 位置为3,对应尾部字形的列下标。若当前待检查单词为单个语义字母,则当前 语义字母在当前待检查单词中的字形位置为0,对应独立字形的列下标。

步骤b、在基本区编码矩阵中获得当前语义字母对应的基本区编码的行下标;

步骤c、将当前语义字母对应的基本区编码的行下标以及当前语义字母在当 前待检查单词中的字形位置作为扩展区编码矩阵中的行和列的下标,判断当前 的语义字母在扩展区编码矩阵中是否有对应的字形,如果有,则检查通过,如 果没有,则检查未通过,返回检查失败信息。

由于维吾尔语中的每个语义字母都有对应的固定字形,语义字母之间的连 接关系具有固定的规则,某些语义字母不能出现在单词中的某个位置,例如根 据维吾尔语的语法规则,当某个语义字母(例如06C9)不能出现在一个单词的 首部或中部时,若检测到该语义字母出现在一个单词中的首部或中部,则说明 出现了拼写错误。

本发明在进行词库检查之前,首先对当前待检查单词进行字形正确性的检 查,以提示用户是否有字母连接不正确等字形错误,如果仅对当前待检查的单 词进行词库检查,则会出现由于单词中的字母连接不正确,拼写检查流程无法 在词库中匹配到候选词的情况,因此,只能发现错误而达不到提示错误类型和 后续的改错的目的。另外,由于上述字形正确性的检查的过程是基于内存中的 矩阵数据结构实现的,相比于在词库中进行字符串匹配的过程具有更高的执行 效率,可高效快速的发现拼写中的基础错误。

步骤103、基于维吾尔语词库,对待检查单词进行拼写正确性的检查,若检 查通过则执行步骤105;否则执行步骤104;

若当前待检查单词没有字形错误,则进一步进行词库检查,以检查是否有 拼写错误,若当前待检查单词在词库中没有匹配到对应的记录,则说明有拼写 错误。

步骤104、返回当前待检查单词的拼写检查未通过即有拼写错误的信息;

步骤105、针对当前的待检查单词的拼写检查流程结束,返回结果信息。

例如,当字形正确性检查和拼写正确性检查都通过时,返回默认的正确标 识TRUE,否则返回False。

在本发明一实施例中,当通过上述的步骤检查出当前待检查单词有拼写错 误的时候,还进一步包括在图形用户接口GUI界面的文档显示窗口中对拼写错 误的单词进行标识和纠正的步骤。

标识拼写错误的单词的方法有多种,例如可以在拼写错误的单词上方显示 一错误图标,用户可通过点击该错误图标激活一个弹出窗口显示出可能的拼写 正确的单词以执行替换操作;也可以是在拼写错误的单词下方以彩色的波浪线 标识该单词有拼写错误,当用户移动鼠标或点击该单词后激活用于纠错的弹出 窗口以执行替换操作;本发明不限定具体的标识和激活纠错窗口的方法。

在通过纠错窗口为用户显示可用于替换拼写错误的单词过程中,需要调用 查找可替换单词的算法过程,本发明一具体实施例中采用最小编辑距离算法从 词库中提取与拼写错误的单词编辑距离最小的一个或多个可替换单词。具体步 骤参考图2,示例如下:

步骤201、预设编辑距离门限,所述编辑距离门限用于选择在编辑距离门限 范围内的可替换单词;

本发明所述的编辑距离是指把一个字符串转换为另一个字符串时所需的最 小编辑操作次数。例如,和两个维吾尔单词之间只有一个字母不同,因此 只需要做一次字母替换的编辑操作即可将原单词变为目标单词假设前者 为拼写错误的单词,后者为词库中正确的单词,则这两个单词进行匹配时的编 辑距离为1。当需要做两次编辑操作才能得到词库中的可替换单词时,编辑距离 即为2,依次类推。

步骤202、将拼写检查未通过的当前待检查单词与词库中的单词一一匹配, 将编辑距离小于预设编辑距离门限的单词提取出来作为可替换单词插入可替换 单词列表;

所述可替换单词列表以编辑距离从小到大的顺序排序,在纠错窗口显示时, 将编辑举例最小的可替换单词显示在与拼写错误的单词最接近的位置。

在本发明另一实施例中,可以设置一可替换单词个数门限,在不设置预设 编辑距离门限的情况下,当从词库中获取到可替换单词个数门限的可替换单词 时,终止匹配提取过程。

在本发明另一实施例中,也可同时设置编辑距离门限和可替换单词个数门 限,以限制获得可替换单词的个数。具体步骤为:将拼写检查未通过的当前待 检查单词与词库中的单词一一匹配,在满足可替换单词列表中的可替换单词的 个数小于可替换单词个数门限的条件下,将编辑距离小于预设编辑距离门限的 单词提取出来作为可替换单词插入可替换单词列表,所述可替换单词列表以编 辑距离从小到大的顺序排序,当可替换单词列表中的可替换单词的个数大于可 替换单词个数门限时,终止匹配提取过程。

本发明的又一实施例提供维吾尔语拼写检查装置,该装置应用于具有文 字处理能力的用户设备上,所述用户设备的硬件环境通常至少包括有CPU、 内存、非易失性存储器、显示屏、I/O接口等硬件。请参考图3,以软件实 现为例,本实施例通过该设备的CPU将非易失性存储器中对应的计算机程 序指令读取到内存中运行,使所述设备包括有:获取模块301、字形正确性 检查模块302、拼写正确性检查模块303以及反馈模块304。在本发明的一 种实施方式中:

获取模块301,用于获取以基本区编码组成的待检查单词;

字形正确性检查模块302,用于基于维吾尔语基本区编码矩阵和扩展区 编码矩阵,调用选型算法对待检查单词进行字形正确性的检查;

拼写正确性检查模块303,用于基于维吾尔语词库,对待检查单词进行 拼写正确性的检查;

反馈模块304,用于在字形正确性的检查或拼写正确性的检查未通过时,返 回当前待检查单词的拼写检查未通过的错误信息。

进一步地,字形正确性检查模块通过执行下述操作对待检查单词进行字形 正确性的检查:

依次获取当前待检查单词中的以基本区编码表征的语义字母,获取当前语 义字母在当前待检查单词中的字形位置;

在基本区编码矩阵中获得当前语义字母对应的基本区编码的行下标;

将当前语义字母对应的基本区编码的行下标以及当前语义字母在当前待检 查单词中的字形位置作为扩展区编码矩阵中的行和列的下标,判断当前的语义 字母在扩展区编码矩阵中是否有对应的字形,如果有,则检查通过,如果没有, 则检查未通过。

进一步地,所述装置还包括:可替换单词选择模块:用于采用最小编辑距 离算法从词库中提取与拼写检查未通过的单词编辑距离最小的一个或多个可替 换单词,以供用户选择替换拼写错误的单词。

进一步地,可替换单词选择模块通过执行如下步骤从词库中提取与拼写检 查未通过的单词编辑距离最小的一个或多个可替换单词:

预设编辑距离门限,所述编辑距离门限用于选择在编辑距离门限范围内的 可替换单词;

将拼写检查未通过的当前待检查单词与词库中的单词一一匹配,将编辑距 离小于预设编辑距离门限的单词提取出来作为可替换单词插入可替换单词列表, 所述可替换单词列表以编辑距离从小到大的顺序排序。

进一步地,可替换单词选择模块通过执行如下步骤从词库中提取与拼写检 查未通过的单词编辑距离最小的一个或多个可替换单词:

预设编辑距离门限及可替换单词个数门限;

将拼写检查未通过的当前待检查单词与词库中的单词一一匹配,在可替 换单词列表中的可替换单词的个数小于可替换单词个数门限的条件下,将编 辑距离小于预设编辑距离门限的单词提取出来作为可替换单词插入可替换 单词列表,所述可替换单词列表以编辑距离从小到大的顺序排序。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明 的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明 保护的范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号