CN112035408A - 文本处理方法、装置、电子设备及存储介质 - Google Patents

文本处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN112035408A
CN112035408A CN202010907287.1A CN202010907287A CN112035408A CN 112035408 A CN112035408 A CN 112035408A CN 202010907287 A CN202010907287 A CN 202010907287A CN 112035408 A CN112035408 A CN 112035408A
Authority
CN
China
Prior art keywords
sentence
content
tag
label
format
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.)
Granted
Application number
CN202010907287.1A
Other languages
English (en)
Other versions
CN112035408B (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.)
Wensihai Huizhike Technology Co ltd
Original Assignee
Wensihai Huizhike Technology 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 Wensihai Huizhike Technology Co ltd filed Critical Wensihai Huizhike Technology Co ltd
Priority to CN202010907287.1A priority Critical patent/CN112035408B/zh
Publication of CN112035408A publication Critical patent/CN112035408A/zh
Application granted granted Critical
Publication of CN112035408B publication Critical patent/CN112035408B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/116Details of conversion of file system types or formats
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/47Machine-assisted translation, e.g. using translation memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Document Processing Apparatus (AREA)

Abstract

本申请提供一种文本处理方法、装置、电子设备及存储介质,用于改善难以保留原始文本的文本格式的问题。该方法包括:获得待处理句段,待处理句段中包括文本内容和格式控制标签;根据预设规则对待处理句段进行断句,获得句段内容和句间内容,句段内容中包括文本内容,句间内容中包括格式控制标签;从句间内容中获取每个句段内容对应的格式控制属性;根据格式控制属性生成每个句段内容对应的容器标签对;将每个句段内容添加到对应的容器标签对中间,得到待显示字串;解析并显示待显示字串。

Description

文本处理方法、装置、电子设备及存储介质
技术领域
本申请涉及计算机数据处理和文本处理的技术领域,具体而言,涉及一种文本处理方法、装置、电子设备及存储介质。
背景技术
格式标签对,是指在标记语言中用于控制文本格式的标签对,此处的标记语言包括:可扩展标记语言(eXtensible Markup Language,XML)和超文本标记语言(Hyper TextMarkup Language,HTML)等,此处的标签匹配对包括:开始标签和结束标签;其中,开始标签和结束标签是相互匹配的。
在目前的文本翻译工作流程中,为了保证翻译人员能够专注于原始文本的文本翻译,需要将翻译句段中的标签和标签匹配对进行替换,在翻译辅助***进行替换的过程中,由于难以获取原始文本中的格式标签对和格式属性,导致无法根据格式属性显示原始文本中的待处理句段的文本格式,从而丢失了原始文本的部分文本格式;也就是说,目前的翻译辅助***通常难以保留原始文本的文本格式。
发明内容
本申请实施例的目的在于提供一种文本处理方法、装置、电子设备及存储介质,用于改善难以保留原始文本的文本格式的问题。
本申请实施例提供了一种文本处理方法,包括:获得待处理句段,待处理句段中包括文本内容和格式控制标签;根据预设规则对待处理句段进行断句,获得句段内容和句间内容,句段内容中包括文本内容,句间内容中包括格式控制标签;从句间内容中获取每个句段内容对应的格式控制属性;根据格式控制属性生成每个句段内容对应的容器标签对;将每个句段内容添加到对应的容器标签对中间,得到待显示字串;解析并显示待显示字串。在上述的实现过程中,先依次从每个句间内容中提取格式控制属性,然后根据格式控制属性生成容器标签对,再使用容器标签对包裹(wrap)断句后的句段内容,通过这种方式能够提取并保留原翻译文本的格式控制属性,从而可以根据带有格式控制属性的容器标签重新生成翻译文本的格式,有效地改善了难以保留原始文本的文本格式的问题。
可选地,在本申请实施例中,从句间内容中获取每个句段内容对应的格式控制属性,包括:按照在待处理句段中的位置顺序依次处理句段内容和句间内容;若处理到句间内容,且句间内容中包括格式处理标签的开始标签,则将开始标签记录在预设数据表中;若处理到句间内容,且句间内容中包括格式处理标签的结束标签,则将结束标签对应的开始标签从预设数据表中移除;若处理到句段内容,则从预设数据表当前记录的开始标签中获取格式控制属性,以得到每个句段内容对应的格式控制属性。在上述的实现过程中,通过按照在待处理句段中的位置顺序依次处理句段内容和句间内容;在处理到句间内容中的开始标签时,将其添加至预设数据表中;在开始标签对应的结束标签时,将开始标签从预设数据表中移除;如果处理到句段内容就获取格式控制属性,从而有效地获得每个句段内容对应的格式控制属性,简化了从句段内容获取格式控制属性的复杂性。
可选地,在本申请实施例中,从预设数据表当前记录的开始标签中获取格式控制属性,包括:获取预设数据表当前记录的开始标签;从当前记录的开始标签的标签内容中获取格式控制属性;或者获取当前记录的开始标签的标识信息;根据标识信息从预设标签信息中查询格式控制属性。
可选地,在本申请实施例中,预设数据表包括:栈结构;将开始标签记录在预设数据表中,包括:根据开始标签对栈结构执行入栈操作;将结束标签对应的开始标签从预设数据表中移除,包括:对栈结构执行出栈操作。
可选地,在本申请实施例中,预设数据表包括:链表结构;将开始标签记录在预设数据表中包括:将开始标签记录在链表结构中;将结束标签对应的开始标签从预设数据表中移除,包括:从链表结构中查找与结束标签对应的开始标签;将结束标签对应的开始标签从链表结构中移除。
本申请实施例还提供了一种文本处理装置,包括:处理句段获得模块,用于获得待处理句段,待处理句段中包括文本内容和格式控制标签;处理句段断句模块,用于根据预设规则对待处理句段进行断句,获得句段内容和句间内容,句段内容中包括文本内容,句间内容中包括格式控制标签;格式属性获取模块,用于从句间内容中获取每个句段内容对应的格式控制属性;容器标签生成模块,用于根据格式控制属性生成每个句段内容对应的容器标签对;显示字串获得模块,用于将每个句段内容添加到对应的容器标签对中间,得到待显示字串;字串解析显示模块,用于解析并显示待显示字串。在上述的实现过程中,先依次从每个句间内容中提取格式控制属性,然后根据格式控制属性生成容器标签对,再将每个句段内容添加到对应的容器标签对中间,即使用容器标签对包裹(wrap)断句后的句段内容,通过这种方式能够提取并保留原翻译文本的格式控制属性,从而可以根据带有格式控制属性的容器标签重新生成翻译文本的格式,有效地改善了难以保留原始文本的文本格式的问题。
可选地,在本申请实施例中,格式属性获取模块,包括:顺序依次处理模块,用于按照在待处理句段中的位置顺序依次处理句段内容和句间内容;开始标签记录模块,用于若处理到句间内容,且句间内容中包括格式处理标签的开始标签,则将开始标签记录在预设数据表中;开始标签删除模块,用于若处理到句间内容,且句间内容中包括格式处理标签的结束标签,则将结束标签对应的开始标签从预设数据表中移除;控制属性获取模块,用于若处理到句段内容,则从预设数据表当前记录的开始标签中获取格式控制属性,以得到每个句段内容对应的格式控制属性。
可选地,在本申请实施例中,控制属性获取模块,包括:格式控制属性获取模块,用于获取预设数据表当前记录的开始标签;从当前记录的开始标签的标签内容中获取格式控制属性;或者格式控制属性查询模块,用于获取当前记录的开始标签的标识信息;根据标识信息从预设标签信息中查询格式控制属性。
可选地,在本申请实施例中,预设数据表包括:栈结构;开始标签记录模块,具体用于根据开始标签对栈结构执行入栈操作;开始标签删除模块,具体用于对栈结构执行出栈操作。
可选地,在本申请实施例中,预设数据表包括:链表结构;开始标签记录模块,具体用于将开始标签记录在链表结构中;开始标签删除模块,具体用于从链表结构中查找与结束标签对应的开始标签;将结束标签对应的开始标签从链表结构中移除。
本申请实施例还提供了一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上面描述的方法。
本申请实施例还提供了一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上面描述的方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出的对照实施例提供的格式处理方法的数据变化示意图;
图2示出的本申请实施例提供的文本处理方法的流程示意图;
图3示出的对照实施例提供的待显示字串的显示效果示意图;
图4示出的本申请实施例提供的文本处理装置的结构示意图;
图5示出的本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述。
在介绍本申请实施例提供的文本处理方法之前,先介绍本申请实施例中所涉及的一些概念:
自然语言处理(Natural Language Processing,NLP),是指由于理解(understanding)自然语言,需要关于外在世界的广泛知识以及运用操作这些知识的能力,而研究自然语言认知的相关问题,即自然语言认知同时也被视为一个人工智能完备(AI-complete)的相关问题,这里的自然语言处理也是机器学习中的一个重要组成部分。
超文本标记语言(Hyper Text Markup Language,HTML),是一种标准通用标记语言,包括一系列标签.HTML通过标签将网络上的文档格式统一,使分散的因特网(Internet)资源连接为一个逻辑整体,HTML通过标记符号来标记要显示的网页中的各个部分。
N-Gram模型算法,又被简称为N-Gram,是一种基于统计语言模型的算法;N-Gram的基本思想是将文本里面的内容按照字节进行大小为N的滑动窗口操作,形成了长度是N的字节片段序列;每一个字节片段称为gram,对所有gram的出现频度进行统计,并且按照事先设定好的阈值进行过滤,形成关键gram列表,也就是向量特征空间,列表中的每一种gram就是一个特征向量维度。
卷积神经网络(Convolutional Neural Networks,CNN),是一种人工神经网络,人工神经网络的人工神经元可以响应周围单元,可以进行大型图像处理;卷积神经网络可以包括卷积层和池化层。
文本卷积网络层(Text-CNN)是一种利用卷积神经网络对文本进行分类的算法,是由Yoon Kim在《卷积神经网络在句子分类中的应用》文章中提出的算法。
循环神经网络(Recurrent Neural Network,RNN),又称递归神经网络,是一类以序列数据为输入,在序列的演进方向进行递归(recursion)且所有节点(循环单元)按链式连接的递归神经网络(recursive neural network)。
脚本对象简谱(JavaScript Object Notation,JSON)是一种轻量级的数据交换格式;JSON基于ECMAScript的一个子集,这里的ECMAScript是欧洲计算机协会制定的JavaScript规范,JSON采用完全独立于编程语言的文本格式来存储和表示数据。
可扩展标记语言(eXtensible Markup Language,XML)是指标准通用标记语言的子集,同时,XML也是一种用于标记电子文件使其具有结构性的标记语言。
需要说明的是,本申请实施例提供的文本处理方法可以被电子设备执行,这里的电子设备是指具有执行计算机程序功能的设备终端或者服务器,设备终端例如:智能手机、个人电脑(personal computer,PC)、平板电脑、个人数字助理(personal digitalassistant,PDA)、移动上网设备(mobile Internet device,MID)、网络交换机或网络路由器等。
下面介绍该文本处理方法适用的应用场景,这里的应用场景包括但不限于:使用该文本处理方法将需要翻译句段中的标签和标签匹配对进行替换,或者使用该文本处理方法替换文本文件的格式,或者替换文本文件的标签匹配对等。
请参见图1示出的对照实施例提供的格式处理方法的数据变化示意图;对照实施例提供的翻译辅助***会将待翻译的原始文本中的每个段落进行断句,由于断句后的格式标签对在断句后被划分在不同的句段内容中,导致难以跨句段内容识别格式标签对,从而无法显示原始文本的文本格式。
下面详细介绍对照实施例提供的处理方法,假设待处理句段的源代码为“<pstyle="font-family:楷体">点击<uicontrol>保存</uicontrol>来存储翻译内容;<b>提示:</b><br/>更多信息关于<b>翻译操作</b>,请参见<xref target="/help/translate"/>;</p>”,首先对该文本段落进行断句,断句后的结果请参照图1所示的内容。从图1中的断句后的待处理句段可以看出,依次对断句后的内容进行属性提取时,由于“<pstyle="font-family:楷体"></p>”这个格式标签对被划分到两个句间内容,即这个“<pstyle="font-family:楷体"></p>”格式标签对被拆分为两个部分,导致在依次处理句间内容和句段内容的过程中难以从单独的部分中匹配到标签对,也无法确定标签中的格式属性“style="font-family:楷体"”应该适用的格式范围。
上述的对照实施例提供的翻译辅助***仅仅能够识别出断句后的“<b></b>”和“<uicontrol></uicontrol>”这种行内的格式标签对,从而显示出行内样式;具体例如:对于“更多信息关于<b>翻译操作</b>”的句段内容来说,可以识别出“<b></b>”的格式标签对,因此,可以将翻译操作加粗后显示给翻译人员。
基于以上分析发现,在进行替换的过程中,由于翻译辅助***难以获取原始文本中的格式标签对和格式属性,导致无法根据格式属性显示原始文本中的待处理句段的文本格式,从而丢失了原始文本的部分文本格式;因此,翻译辅助***通常选择不显示这部分内容的文本格式,这部分内容是指被划分在不同的句段内容中的格式标签对中的内容,而仅仅展示行内的格式标签对的行内样式格式,因此,翻译辅助***通常难以保留原始文本的文本格式,即难以完整地显示原始文本的文本格式。
该文本处理方法的主要思路是,先依次从每个句间内容中提取格式控制属性,然后根据格式控制属性生成容器标签对,再使用容器标签对包裹(wrap)断句后的句段内容,通过这种方式能够提取并保留原翻译文本的格式控制属性,从而可以根据带有格式控制属性的容器标签重新生成翻译文本的格式,有效地改善了难以保留原始文本的文本格式的问题。
请参见图2示出的本申请实施例提供的文本处理方法的流程示意图;该文本处理方法可以包括:
步骤S110:获得待处理句段,待处理句段中包括文本内容和格式控制标签。
待处理句段,是指需要对该句段进行文本格式处理的电子数据,待处理句段中包括文本内容和格式控制标签,具体例如:请参照图1和图2,假设获得的待处理句段为“<pstyle="font-family:楷体">点击<uicontrol>保存</uicontrol>来存储翻译内容;<b>提示:</b><br/>更多信息关于<b>翻译操作</b>,请参见<xref target="/help/translate"/>;</p>”,那么待处理句段中的文本内容为“点击保存来存储翻译内容”、“提示:更多信息关于翻译操作,请参见;”,待处理句段中的格式控制标签为<p style="font-family:楷体"></p>和<b></b>等等。
当然,在步骤S110之前,还需要对原始文件进行预处理,并从预处理后的原始文件中解析出待处理句段,此处的原始文件的格式包括但不限于:doc、html、xml和MD等格式,原始文件由于格式不同,导致需要根据不同语言模块来解析不同格式的原始文档,具体例如:加粗在不同格式的原始文件下有不同的表示方式,若是在html文件中加粗,那么通常会以格式标签对的方式表示为“<b>加粗文字</b>”;若是在MD(MakeDown)文件中加粗,那么通常会以“**加粗文字**”这种方式表示。
上述步骤S110的实施方式有很多种,包括但不限于这几种:第一种获得方式,接收其它终端设备发送的待处理句段,将待处理句段存储至文件***、数据库或移动存储设备中;第二种获得方式,获取预先存储的待处理句段,具体例如:从文件***中获取待处理句段,或者从数据库中获取待处理句段,或者从移动存储设备中获取待处理句段;第三种获得方式,使用浏览器等软件获取互联网上的待处理句段,或者使用其它应用程序访问互联网获得待处理句段。
在步骤S110之后,执行步骤S120:根据预设规则对待处理句段进行断句,获得句段内容和句间内容。
句段内容,是指被显示出来的实质性内容,这里的实质性内容用于被翻译人员浏览并翻译,具体的句段内容请参照图1所示。
句间内容,是指在待处理句段中排除句段内容之外的外部标签内容,具体地,常见的句间内容包括:白字符、外部结构句段标签、首尾配对的内部行内句段标签等,具体的句间内容示例请参照图1所示出的内容。
上述步骤S120的实施方式有很多种,包括但不限于以下几种:
第一种实施方式,根据预设标签对待处理句段进行断句;其中,预设标签可以包括:段落标签<p>和区域标签<div>等等,此处以根据段落标签进行断句为例进行说明,具体例如:若待处理句段为<p>您好!</p><p style=“font:bold”>谢谢!</p>,那么根据段落标签对待处理句段进行断句,获得断句后的句段内容为“您好!谢谢!”,断句后的句间内容为<p></p><p style=“font:bold”></p>;其中,此处的句段内容中包括文本内容“您好!”和“谢谢!”,句间内容中包括格式控制标签<p></p>和<p style=“font:bold”></p>,在格式控制标签中可以包括格式控制属性,例如:格式控制标签<p style=“font:bold”></p>中包括的格式控制属性为style=“font:bold”,当然也可以不包括格式控制属性,例如格式控制标签<p></p>中就没有格式控制属性。
第二种实施方式,根据预设标点符号对待处理句段进行断句;在获得句段内容之后,可以根据预设标点符号进行断句,此处的预设标点符号包括但不限于:逗号、句号、分号和感叹号等其中任意一种及其一种以上。当然在一些实施过程中,也可以将第二种实施方式与第一种实施方式结合起来使用,例如:在预设标签不存在(例如使用了XML标签)或者预设标签格式无法匹配的情况下,直接使用第二种实施方式,或者先使用第一种实施方式断句,再使用第二种实施方式断句;也可以先使用第二种实施方式断句,再使用第一种实施方式断句。
第三种实施方式,结合第一种实施方式和第二种实施方式中不能处理的情况,例如文本格式标签中均没有上述标签,即没有使用标准的HTML标签,或者获得的句段内容中标点符号不规范,甚至没有标点符号(例如古汉语或者古文著作)的情况下,可以使用自然语言处理(NLP)技术对待处理句段进行断句;其中,可以使用的NLP技术包括但不限于:条件随机场(conditional random field,CRF)、基于上下文N-gram模型方法和基于神经网络的断句方法。当然也可以将古文断句视为一个典型的序列标注问题,采用端到端的神经网络计算序列标注的条件概率,若条件概率大于预设阈值,则对待处理句段进行断句;其中,可以采用的神经网络包括但不限于:CNN、Text-CNN、RNN和卷积循环神经网络(ConvolutionalRecurrent Neural Networks,CRNN),此处的CRNN是指包括CNN和RNN的神经网络模型。
第四种实施方式,对于上述三种实施方式处理都不能获得很好效果的,可以让翻译人员查看,并在分析后对待处理句段进行断句,人工断句后再执行后续的步骤。
在步骤S120之后,执行步骤S130:从句间内容中获取每个句段内容对应的格式控制属性。
上述步骤S130的实施方式可以包括如下步骤:
步骤S131:按照在待处理句段中的位置顺序依次处理句段内容和句间内容。
上述步骤S131的实施方式例如:若断句后的待处理句段为“<p style="font-family:楷体">点击<uicontrol>保存</uicontrol>来存储翻译内容;<b>提示:</b><br/>更多信息关于<b>翻译操作</b>,请参见<xref target="/help/translate"/>;</p>”,那么可以按照在待处理句段中的位置顺序依次处理句段内容和句间内容;其中,位置顺序可以参见图1中断句后的待处理句段对应内容从上到下的顺序,具体地,待处理句段中的位置顺序依次为“<p style="font-family:楷体">”、“点击<uicontrol>保存</uicontrol>来存储翻译内容;”、“<b>”、“提示:”、“</b><br/>”、“更多信息关于<b>翻译操作</b>,请参见<xref target="/help/translate"/>;”和“</p>”。
步骤S132:若处理到句间内容,且句间内容中包括格式处理标签的开始标签,则将开始标签记录在预设数据表中。
其中,上述的预设数据表是指能够新增、删除、修改和查询标签信息的数据结构,标签信息包括开始标签和结束标签等等,此处的预设数据表包括但不限于:栈结构和链表结构。此处步骤S132的实施方式将在下面描述。
步骤S133:若处理到句间内容,且句间内容中包括格式处理标签的结束标签,则将结束标签对应的开始标签从预设数据表中移除。
由于步骤S132和步骤S133之间的关系非常紧密,因此这里将两个步骤放在一起描述,上述步骤S132至步骤S133的实施方式有很多种,至少包括如下几种:
栈结构(stack)又被称为栈、堆栈或堆叠,是计算机科学中的一种抽象数据类型或者数据结构,只允许在有序的线性数据集合的一端(称为堆栈顶端)进行加入数据和移除数据的运算,栈结构的核心思路是按照后进先出(LIFO,Last In First Out)的原理运作的;其中,在栈结构中加入数据又被称为入栈或者压栈(push),从栈结构中移除数据又被称为出栈或者弹栈(pop)。
第一种实施方式,上述的预设数据表可以采用栈结构,那么在将开始标签记录在预设数据表中时,可以根据开始标签对栈结构执行入栈操作;且在将结束标签对应的开始标签从预设数据表中移除时,可以对栈结构执行出栈操作。具体地,为了便于说明和理解,这里使用数组形式来表示栈结构,当栈结构为空时,栈结构可以表示为[],左边的中括号表示栈结构的栈顶,右边的中括号表示栈结构的栈底,假设栈结构的入栈操作和出栈操作只能在栈结构的栈顶操作数组元素。下面以步骤S131中的数据为例进行详细地说明,具体例如:当处理到“<p style="font-family:楷体">”时,“<p style="font-family:楷体">”是开始标签,则将“<p style="font-family:楷体">”执行入栈操作,入栈后的栈结构为[“<p style="font-family:楷体">”];当处理到“点击<uicontrol>保存</uicontrol>来存储翻译内容;”时,“点击<uicontrol>保存</uicontrol>来存储翻译内容;”为句段内容,因此,此时应当执行步骤S134;当处理到“<b>”时,“<b>”是开始标签,则将“<b>”执行入栈操作,入栈后的栈结构为[“<b>”,“<p style="font-family:楷体">”];当处理到“提示:”时,“提示:”为句段内容,因此,此时应当执行步骤S134;当处理到“</b><br/>”时,“</b>”为结束标签,因此,应当将结束标签“</b>”对应的开始标签“<b>”从栈结构中移除,移除后的栈结构是[“<p style="font-family:楷体">”],而“<br/>”既不是开始标签,也不是结束标签,可以直接跳过该标签;当处理到“更多信息关于<b>翻译操作</b>,请参见<xref target="/help/translate"/>;”时,具体的操作原理和上面类似,因此这里就不再赘述;当处理到“</p>”时,“</p>”为结束标签,因此,应当将结束标签对应的开始标签从栈结构中移除,移除后的栈结构是空栈结构,即空栈结构表示为[]。
第二种实施方式,当待处理句段中的标签无法严格配对(可能错位,也可能使用XML标签)时,具体例如:normal<b>bold<i>bold italic</b>italic</i>,此处的b标签和i标签均无法严格配对,那么上述的预设数据表可以采用链表结构来解决此问题,具体地,在开始标签记录时,可以将开始标签记录在链表结构中;且在将结束标签对应的开始标签移除时,可以从链表结构中查找与结束标签对应的开始标签,并将该开始标签从链表结构中移除。该实施方式的实施原理与第一种实施方式类似,有不清楚的地方可以参照第一种实施方式,区别仅在于,第一种实施方式采用的栈结构,而本实施方式采用的是链表结构,在移除开始标签时,需要在链表结构中从后往前查找与该结束标签对应的第一个开始标签,并从预设数据表中删除该结束标签对应的第一个开始标签。
步骤S134:若处理到句段内容,则从预设数据表当前记录的开始标签中获取格式控制属性,以得到每个句段内容对应的格式控制属性。
上述步骤S134的实施方式有很多种,至少包括下面几种:
第一种实施方式,直接在当前开始标签中获取格式控制属性,该实施方式包括:获取预设数据表当前记录的开始标签,并从当前记录的开始标签的标签内容中获取格式控制属性,具体例如:请参照图2,若待处理句段为“<p style="font-family:楷体">点击<uicontrol>保存</uicontrol>来存储翻译内容;<b>提示:</b><br/>更多信息关于<b>翻译操作</b>,请参见<xref target="/help/translate"/>;</p>”,那么当处理到句段内容为“点击<uicontrol>保存</uicontrol>来存储翻译内容;”时,此时的预设数据表中当前记录的开始标签为“<p style="font-family:楷体">”,获取开始标签中的格式控制属性,不难看出,该格式控制属性为“font-family:楷体”;以此类推,对每个句段内容都进行这样的处理,获得每个句段内容对应的格式控制属性。有时候,开始标签中包括多个格式控制属性时,就无法获知需要到底获得那个格式控制属性,这个问题将在下面详细的描述。
第二种实施方式,根据标识信息在开始标签中查询格式控制属性,该实施方式包括:当开始标签中包括多个格式控制属性时,可以获取当前记录的开始标签的标识信息,并根据标识信息从预设标签信息中查询格式控制属性。具体地,为了便于理解和说明,此处使用级联样式表语言(Cascading Style Sheets,CSS)描述开始标签中的多个格式控制属性,开始标签例如:<p style=“font:bold;border:5px;text-align:center;”>,可以使用CSS语言表示为p{font:bold;border:5px;text-align:center;};其中,font表示字体样式为粗体(bold),border代表边框大小为5个像素(5px),text-align表示文字位置为居中(center),假设开始标签的标识信息为font,那么根据标识信息从预设标签信息中查询格式控制属性为“font:bold”,假设开始标签的标识信息为border,那么根据标识信息从预设标签信息中查询格式控制属性为“border:5px”,假设开始标签的标识信息为text-align,那么根据标识信息从预设标签信息中查询格式控制属性为“text-align:center”。
在上述的实现过程中,通过按照在待处理句段中的位置顺序依次处理句段内容和句间内容;在处理到句间内容中的开始标签时,将其添加至预设数据表中;在开始标签对应的结束标签时,将开始标签从预设数据表中移除;如果处理到句段内容就获取格式控制属性,从而有效地获得每个句段内容对应的格式控制属性,简化了从句段内容获取格式控制属性的复杂性。
在步骤S130之后,执行步骤S140:根据格式控制属性生成每个句段内容对应的容器标签对。
容器标签对,是指该标签能够包裹(wrap)其他标签的容器标签,可以理解为,其他的标签可以被容器标签对嵌套或装载,具体地容器标签对例如:<p></p>、<pre></pre>和<div></div>等;在具体的实施过程中,容器标签对可以根据具体情况进行选择。
上述步骤S140的实施方式例如:请参照图2,若待处理句段为“<p style="font-family:楷体">点击<uicontrol>保存</uicontrol>来存储翻译内容;<b>提示:</b><br/>更多信息关于<b>翻译操作</b>,请参见<xref target="/help/translate"/>;</p>”,那么有很多种实施方式,包括但不限于如下两种:
第一种实施方式,可以将句段容器视为锚点,在句段容器中直接放置行内标签,这里的行内标签例如span元素标签,然后进一步设置span元素标签的样式属性,最后将句段内容放入span标签中,或者将句段内容放入容器标签对中;那么最后获得的源代码可以为“<div style="font-family:楷体">点击<span class="uicontrol">保存</span>来存储翻译内容;<span class="b">提示:</span><br/>更多信息关于<span class="b">翻译操作</span>,请参见<xref target="/help/translate"/>;</div>”。
第二种实施方式,可以在容器标签对中的开始标签中设置样式属性,当容器标签对中需要进一步设置样式时,也可以在容器标签对中嵌套容器标签,并在嵌套的容器标签中设置样式属性,从而达到进一步设置容器标签对中的内容文本样式的效果;此处的实施原理和上面第一种实施方式类似,区别仅在于,第一种实施方式嵌入的是行内标签,而本实施方式嵌入的是容器标签。
在一些实施方式中,当根据格式控制属性生成每个句段内容对应的容器标签对时,还可以在使用pre标签时,直接保留显示白字符和换行符;使用除了pre标签之外的其他标签,还可以设置style="white-space:pre-wrap"的样式属性,从而保留显示白字符和换行符;还可以根据具体情况设置contenteditalbe属性,来控制该容器的内容是否可以被编辑。
在步骤S140之后,执行步骤S150:将每个句段内容添加到对应的容器标签对中间,得到待显示字串。
上述步骤S150的实施方式例如:假设待处理句段为“<p style="font-family:楷体">点击<uicontrol>保存</uicontrol>来存储翻译内容;<b>提示:</b><br/>更多信息关于<b>翻译操作</b>,请参见<xref target="/help/translate"/>;</p>”,若使用步骤S140的第一种实施方式获得的待显字符串的源代码为“<div style="font-family:楷体">点击<span class="uicontrol">保存</span>来存储翻译内容;<span class="b">提示:</span><br/>更多信息关于<span class="b">翻译操作</span>,请参见<xreftarget="/help/translate"/>;</div>”;若使用步骤S140的第二种实施方式获得的待显字符串的源代码为“<div style="font-family:楷体">点击<div class="uicontrol">保存</div>来存储翻译内容;<div class="b">提示:</div><br/>更多信息关于<divclass="b">翻译操作</div>,请参见<xref target="/help/translate"/>;</div>”。
在步骤S150之后,执行步骤S160:解析并显示待显示字串。
请参见图3示出的对照实施例提供的待显示字串的显示效果示意图;上述步骤S160中的解析并显示待显示字串的效果,请参照图3中的显示效果。
在上述的实现过程中,先依次从每个句间内容中提取格式控制属性,然后根据格式控制属性生成容器标签对,再将每个句段内容添加到对应的容器标签对中间,即使用容器标签对包裹(wrap)断句后的句段内容,通过这种方式能够提取并保留原翻译文本的格式控制属性,从而可以根据带有格式控制属性的容器标签重新生成翻译文本的格式,有效地改善了难以保留原始文本的文本格式的问题。
请参见图4示出的本申请实施例提供的文本处理装置的结构示意图;本申请实施例提供了一种文本处理装置200,包括:
处理句段获得模块210,用于获得待处理句段,待处理句段中包括文本内容和格式控制标签。
处理句段断句模块220,用于根据预设规则对待处理句段进行断句,获得句段内容和句间内容,句段内容中包括文本内容,句间内容中包括格式控制标签。
格式属性获取模块230,用于从句间内容中获取每个句段内容对应的格式控制属性。
容器标签生成模块240,用于根据格式控制属性生成每个句段内容对应的容器标签对。
显示字串获得模块250,用于将每个句段内容添加到对应的容器标签对中间,得到待显示字串。
字串解析显示模块260,用于解析并显示待显示字串。
可选地,在本申请实施例中,格式属性获取模块,包括:
顺序依次处理模块,用于按照在待处理句段中的位置顺序依次处理句段内容和句间内容。
开始标签记录模块,用于若处理到句间内容,且句间内容中包括格式处理标签的开始标签,则将开始标签记录在预设数据表中。
开始标签删除模块,用于若处理到句间内容,且句间内容中包括格式处理标签的结束标签,则将结束标签对应的开始标签从预设数据表中移除。
控制属性获取模块,用于若处理到句段内容,则从预设数据表当前记录的开始标签中获取格式控制属性,以得到每个句段内容对应的格式控制属性。
可选地,在本申请实施例中,控制属性获取模块,包括:
格式控制属性获取模块,用于获取预设数据表当前记录的开始标签;从当前记录的开始标签的标签内容中获取格式控制属性。
或者控制属性获取模块,包括:
格式控制属性查询模块,用于获取当前记录的开始标签的标识信息;根据标识信息从预设标签信息中查询格式控制属性。
可选地,在本申请实施例中,预设数据表包括:栈结构。
开始标签记录模块,具体用于根据开始标签对栈结构执行入栈操作。
开始标签删除模块,具体用于对栈结构执行出栈操作。
可选地,在本申请实施例中,预设数据表包括:链表结构。
开始标签记录模块,具体用于将开始标签记录在链表结构中。
开始标签删除模块,具体用于从链表结构中查找与结束标签对应的开始标签;将结束标签对应的开始标签从链表结构中移除。
应理解的是,该装置与上述的文本处理方法实施例对应,能够执行上述方法实施例涉及的各个步骤,该装置具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。该装置包括至少一个能以软件或固件(firmware)的形式存储于存储器中或固化在装置的操作***(operating system,OS)中的软件功能模块。
请参见图5示出的本申请实施例提供的电子设备的结构示意图。本申请实施例提供的一种电子设备300,包括:处理器310和存储器320,存储器320存储有处理器310可执行的机器可读指令,机器可读指令被处理器310执行时执行如上的方法。
本申请实施例还提供了一种存储介质330,该存储介质330上存储有计算机程序,该计算机程序被处理器310运行时执行如上的方法。
其中,存储介质330可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
本申请实施例提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其他的方式实现。以上所描述的装置实施例仅是示意性的,例如,附图中的流程图和框图显示了根据本申请实施例的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以和附图中所标注的发生顺序不同。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这主要根据所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以使用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请实施例中的各个实施例的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上的描述,仅为本申请实施例的可选实施方式,但本申请实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请实施例的保护范围之内。

Claims (10)

1.一种文本处理方法,其特征在于,包括:
获得待处理句段,所述待处理句段中包括文本内容和格式控制标签;
根据预设规则对所述待处理句段进行断句,获得句段内容和句间内容,所述句段内容中包括所述文本内容,所述句间内容中包括所述格式控制标签;
从所述句间内容中获取每个所述句段内容对应的格式控制属性;
根据所述格式控制属性生成每个所述句段内容对应的容器标签对;
将每个所述句段内容添加到对应的所述容器标签对中间,得到待显示字串;
解析并显示所述待显示字串。
2.根据权利要求1所述的方法,其特征在于,所述从所述句间内容中获取每个所述句段内容对应的格式控制属性,包括:
按照在所述待处理句段中的位置顺序依次处理所述句段内容和所述句间内容;
若处理到所述句间内容,且所述句间内容中包括格式处理标签的开始标签,则将所述开始标签记录在预设数据表中;
若处理到所述句间内容,且所述句间内容中包括格式处理标签的结束标签,则将所述结束标签对应的开始标签从所述预设数据表中移除;
若处理到所述句段内容,则从所述预设数据表当前记录的开始标签中获取格式控制属性,以得到每个所述句段内容对应的格式控制属性。
3.根据权利要求2所述的方法,其特征在于,所述从所述预设数据表当前记录的开始标签中获取格式控制属性,包括:
获取所述预设数据表当前记录的开始标签;
从所述当前记录的开始标签的标签内容中获取格式控制属性;
或者
获取所述当前记录的开始标签的标识信息;
根据所述标识信息从预设标签信息中查询格式控制属性。
4.根据权利要求2所述的方法,其特征在于,所述预设数据表包括:栈结构;所述将所述开始标签记录在预设数据表中,包括:
根据所述开始标签对所述栈结构执行入栈操作;
所述将所述结束标签对应的开始标签从所述预设数据表中移除,包括:对所述栈结构执行出栈操作。
5.根据权利要求2所述的方法,其特征在于,所述预设数据表包括:链表结构;所述将所述开始标签记录在预设数据表中包括:
将所述开始标签记录在所述链表结构中;
所述将所述结束标签对应的开始标签从所述预设数据表中移除,包括:
从所述链表结构中查找与所述结束标签对应的开始标签;
将所述结束标签对应的开始标签从所述链表结构中移除。
6.一种文本处理装置,其特征在于,包括:
处理句段获得模块,用于获得待处理句段,所述待处理句段中包括文本内容和格式控制标签;
处理句段断句模块,用于根据预设规则对所述待处理句段进行断句,获得句段内容和句间内容,所述句段内容中包括所述文本内容,所述句间内容中包括所述格式控制标签;
格式属性获取模块,用于从所述句间内容中获取每个所述句段内容对应的格式控制属性;
容器标签生成模块,用于根据所述格式控制属性生成每个所述句段内容对应的容器标签对;
显示字串获得模块,用于将每个所述句段内容添加到对应的所述容器标签对中间,得到待显示字串;
字串解析显示模块,用于解析并显示所述待显示字串。
7.根据权利要求6所述的装置,其特征在于,所述格式属性获取模块,包括:
顺序依次处理模块,用于按照在所述待处理句段中的位置顺序依次处理所述句段内容和所述句间内容;
开始标签记录模块,用于若处理到所述句间内容,且所述句间内容中包括格式处理标签的开始标签,则将所述开始标签记录在预设数据表中;
开始标签删除模块,用于若处理到所述句间内容,且所述句间内容中包括格式处理标签的结束标签,则将所述结束标签对应的开始标签从所述预设数据表中移除;
控制属性获取模块,用于若处理到所述句段内容,则从所述预设数据表当前记录的开始标签中获取格式控制属性,以得到每个所述句段内容对应的格式控制属性。
8.根据权利要求7所述的装置,其特征在于,所述控制属性获取模块,包括:
格式控制属性获取模块,用于获取所述预设数据表当前记录的开始标签;从所述当前记录的开始标签的标签内容中获取格式控制属性;或者
格式控制属性查询模块,用于获取所述当前记录的开始标签的标识信息;根据所述标识信息从预设标签信息中查询格式控制属性。
9.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述机器可读指令被所述处理器执行时执行如权利要求1至5任一所述的方法。
10.一种存储介质,其特征在于,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至5任一所述的方法。
CN202010907287.1A 2020-09-01 2020-09-01 文本处理方法、装置、电子设备及存储介质 Active CN112035408B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010907287.1A CN112035408B (zh) 2020-09-01 2020-09-01 文本处理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010907287.1A CN112035408B (zh) 2020-09-01 2020-09-01 文本处理方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN112035408A true CN112035408A (zh) 2020-12-04
CN112035408B CN112035408B (zh) 2023-10-31

Family

ID=73591013

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010907287.1A Active CN112035408B (zh) 2020-09-01 2020-09-01 文本处理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN112035408B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114925656A (zh) * 2022-06-14 2022-08-19 北京新唐思创教育科技有限公司 富文本显示方法、装置、设备和存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040268235A1 (en) * 2003-06-26 2004-12-30 International Business Machines Corporation Rich text handling for a web application
US20050108630A1 (en) * 2003-11-19 2005-05-19 Wasson Mark D. Extraction of facts from text
US20060048096A1 (en) * 2004-08-24 2006-03-02 Oracle International Corporation RTF template and XSL/FO conversion: a new way to create computer reports
US20070009161A1 (en) * 2005-07-08 2007-01-11 Hollingsworth William A Data format conversion
CN107967243A (zh) * 2017-11-22 2018-04-27 语联网(武汉)信息技术有限公司 一种支持用户自主断句的处理方法
CN108874928A (zh) * 2018-05-31 2018-11-23 平安科技(深圳)有限公司 简历数据信息解析处理方法、装置、设备及存储介质
CN109145260A (zh) * 2018-08-24 2019-01-04 北京科技大学 一种文本信息自动提取方法
CN109299446A (zh) * 2018-08-03 2019-02-01 新华三大数据技术有限公司 报告生成方法及装置
CN110851136A (zh) * 2019-09-18 2020-02-28 平安科技(深圳)有限公司 数据获取方法、装置、电子设备及存储介质
CN111209759A (zh) * 2019-12-31 2020-05-29 京信通信***(中国)有限公司 网页翻译方法、装置、计算机设备以及存储介质
CN111291533A (zh) * 2020-01-22 2020-06-16 文思海辉智科科技有限公司 待显示句段的显示方法、装置、计算机设备和存储介质
CN111523289A (zh) * 2020-04-24 2020-08-11 支付宝(杭州)信息技术有限公司 一种文本格式生成方法、装置、设备和可读介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040268235A1 (en) * 2003-06-26 2004-12-30 International Business Machines Corporation Rich text handling for a web application
US20050108630A1 (en) * 2003-11-19 2005-05-19 Wasson Mark D. Extraction of facts from text
US20060048096A1 (en) * 2004-08-24 2006-03-02 Oracle International Corporation RTF template and XSL/FO conversion: a new way to create computer reports
US20070009161A1 (en) * 2005-07-08 2007-01-11 Hollingsworth William A Data format conversion
CN107967243A (zh) * 2017-11-22 2018-04-27 语联网(武汉)信息技术有限公司 一种支持用户自主断句的处理方法
CN108874928A (zh) * 2018-05-31 2018-11-23 平安科技(深圳)有限公司 简历数据信息解析处理方法、装置、设备及存储介质
CN109299446A (zh) * 2018-08-03 2019-02-01 新华三大数据技术有限公司 报告生成方法及装置
CN109145260A (zh) * 2018-08-24 2019-01-04 北京科技大学 一种文本信息自动提取方法
CN110851136A (zh) * 2019-09-18 2020-02-28 平安科技(深圳)有限公司 数据获取方法、装置、电子设备及存储介质
CN111209759A (zh) * 2019-12-31 2020-05-29 京信通信***(中国)有限公司 网页翻译方法、装置、计算机设备以及存储介质
CN111291533A (zh) * 2020-01-22 2020-06-16 文思海辉智科科技有限公司 待显示句段的显示方法、装置、计算机设备和存储介质
CN111523289A (zh) * 2020-04-24 2020-08-11 支付宝(杭州)信息技术有限公司 一种文本格式生成方法、装置、设备和可读介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
向菁菁;耿光刚;李晓东;: "一种新闻网页关键信息的提取算法", 计算机应用, no. 08, pages 28 - 32 *
陈婷婷;严华;臧军;: "基于改进内容分析算法的网页正文提取", 计算机工程与设计, no. 04, pages 125 - 129 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114925656A (zh) * 2022-06-14 2022-08-19 北京新唐思创教育科技有限公司 富文本显示方法、装置、设备和存储介质

Also Published As

Publication number Publication date
CN112035408B (zh) 2023-10-31

Similar Documents

Publication Publication Date Title
Fawcett et al. Beginning XML
US9489385B1 (en) Exact look and feel for sharepoint archived content
US20060277173A1 (en) Extraction of information from documents
CN102810097B (zh) 网页正文内容提取方法及装置
JP7312799B2 (ja) 情報抽出方法、抽出モデル訓練方法、装置及び電子機器
US20100023318A1 (en) Method and device for retrieving data and transforming same into qualitative data of a text-based document
US20150100304A1 (en) Incremental computation of repeats
CN110427614B (zh) 段落层级的构建方法、装置、电子设备及存储介质
US20190179958A1 (en) Split mapping for dynamic rendering and maintaining consistency of data processed by applications
US20030233225A1 (en) Natural language sentence parser
US20210073257A1 (en) Logical document structure identification
WO2018010579A1 (zh) 字符串的分词方法、装置及设备
US20190057074A1 (en) Patent automation system
AU2021253859A1 (en) Generating cascaded text formatting for electronic documents and displays
CN105005472B (zh) 一种web上显示维吾尔文字的方法及装置
JP2020521408A (ja) データの圧縮および分析のコンピュータ化された方法
US20100198770A1 (en) Identifying previously annotated web page information
US20160062965A1 (en) Generation of parsable data for deep parsing
CN114491325A (zh) 网页数据的提取方法和装置、计算机设备、存储介质
CN116468009A (zh) 文章生成方法、装置、电子设备和存储介质
CN112035408B (zh) 文本处理方法、装置、电子设备及存储介质
TW201530322A (zh) 字型處理方法及字型處理系統
CN112667208A (zh) 翻译错误识别方法、装置、计算机设备及可读存储介质
CN112445862A (zh) 物联网设备数据集构建方法、装置、电子设备和存储介质
US20210012444A1 (en) Automated patent preparation

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