CN116306526A - 一种根据文本下标标记对应富文本的方法及装置 - Google Patents

一种根据文本下标标记对应富文本的方法及装置 Download PDF

Info

Publication number
CN116306526A
CN116306526A CN202310228644.5A CN202310228644A CN116306526A CN 116306526 A CN116306526 A CN 116306526A CN 202310228644 A CN202310228644 A CN 202310228644A CN 116306526 A CN116306526 A CN 116306526A
Authority
CN
China
Prior art keywords
data
stack
characters
text
rich 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.)
Granted
Application number
CN202310228644.5A
Other languages
English (en)
Other versions
CN116306526B (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.)
Beijing Maxtech Co ltd
Original Assignee
Beijing Maxtech 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 Beijing Maxtech Co ltd filed Critical Beijing Maxtech Co ltd
Priority to CN202310228644.5A priority Critical patent/CN116306526B/zh
Publication of CN116306526A publication Critical patent/CN116306526A/zh
Application granted granted Critical
Publication of CN116306526B publication Critical patent/CN116306526B/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/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/169Annotation, e.g. comment data or footnotes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

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

Abstract

本申请公开了一种根据文本下标标记对应富文本的方法及装置,通过获取带有富文本标签的第一数据;复制第一数据得到第二数据;对第一数据进行格式化处理,并根据特定字符进行标记;将标记后的第一数据进行入栈处理,得到栈A;按字符顺序判断第二数据与栈A是否匹配;若第二数据与栈A中的字符不匹配,则将不匹配的字符放入栈B;若第二数据与栈A中的字符匹配,则打桩标记并将字符放入栈C;根据入栈顺序,从栈B中依次取出字符,若遇到打桩标记的位置,则从栈C对应的标记位置取出字符,最后得到带有标记的富文本数据。本申请在已知纯文本下标的情况下,能够快速标记对应的富文本字段,适用于不同类型的格式。

Description

一种根据文本下标标记对应富文本的方法及装置
技术领域
本申请涉及富文本标记技术领域,具体涉及一种根据文本下标标记对应富文本的方法及装置。
背景技术
富文本格式(RichTextFormat)即RTF格式,又称多文本格式,是由微软公司开发的跨平台文档格式。大多数的文字处理软件都能读取和保存RTF文档。它是一种方便于不同的设备、系统查看的文本和图形文档格式。
在实际业务中,有两段文字内容相同的段落,一段是由富文本编辑的,包含html代码或者word格式等,另一段是由文本编辑的,只有纯文本;纯文本的文本下标是已知的,需要根据已知的文本下标对富文本段落进行标记,但是富文本可能是excel文本或word文本,也可能是别的文本格式。
目前,针对以上这种情况,有的是通过js定位后进行标记的,但是该方法只适用于html文本,对于word文本,通过html文本读出来以后无法处理;有的是通过enumerateAttributes方法的二次封装来获取整个富文本组成的所有子NSAttributedString,然后用NSStringFromRange作为键封装成字典rangeSubAttStringDic,字典的键NSRange字符串经过排序就是各个片段对应的键,进而获取对应的子NSAttributedString,再通过下标方法可以非常简单的根据索引标记富文本中对应的内容,但是该方法也局限在只能针对html格式的富文本进行编辑。
发明内容
为此,本申请提供一种根据文本下标标记对应富文本的方法及装置,以解决现有技术存在的根据文本内容标记富文本时受富文本格式局限的问题。
为了实现上述目的,本申请提供如下技术方案:
第一方面,一种根据文本下标标记对应富文本的方法,包括:
获取带有富文本标签的第一数据;
复制所述第一数据得到第二数据;
对所述第一数据进行格式化处理,并根据特定字符进行标记;
将标记后的所述第一数据进行入栈处理,得到栈A;
按字符顺序判断所述第二数据与所述栈A是否匹配;
若所述第二数据与所述栈A中的字符不匹配,则将不匹配的字符放入栈B;
若所述第二数据与所述栈A中的字符匹配,则打桩标记并将字符放入栈C;
根据入栈顺序,从所述栈B中依次取出字符,若遇到打桩标记的位置,则从所述栈C对应的标记位置取出字符,最后得到带有标记的富文本数据。
进一步的,所述第一数据为java读取的数据。
进一步的,所述富文本标签包括word标签、excel标签或html标签。
进一步的,所述按字符顺序判断所述第二数据与所述栈A是否匹配时,每次进入一个字符。
第二方面,一种根据文本下标标记对应富文本的装置,包括:
获取模块,用于获取带有富文本标签的第一数据;
复制模块,用于复制所述第一数据得到第二数据;
标记模块,用于对所述第一数据进行格式化处理,并根据特定字符进行标记;
数据处理模块,用于将标记后的所述第一数据进行入栈处理,得到栈A;
判断模块,用于按字符顺序判断所述第二数据与所述栈A是否匹配;
若所述第二数据与所述栈A中的字符不匹配,则将不匹配的字符放入栈B;
若所述第二数据与所述栈A中的字符匹配,则打桩标记并将字符放入栈C;
组合模块,用于根据入栈顺序,从所述栈B中依次取出字符,若遇到打桩标记的位置,则从所述栈C对应的标记位置取出字符,最后得到带有标记的富文本数据。
进一步的,所述第一数据为java读取的数据。
进一步的,所述富文本标签包括word标签、excel标签或html标签。
进一步的,所述按字符顺序判断所述第二数据与所述栈A是否匹配时,每次进入一个字符。
第三方面,一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现一种根据文本下标标记对应富文本的方法的步骤。
第四方面,一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现一种根据文本下标标记对应富文本的方法的步骤。
相比现有技术,本申请至少具有以下有益效果:
本申请提供了一种根据文本下标标记对应富文本的方法及装置,通过获取带有富文本标签的第一数据;复制第一数据得到第二数据;对第一数据进行格式化处理,并根据特定字符进行标记;将标记后的第一数据进行入栈处理,得到栈A;按字符顺序判断第二数据与栈A是否匹配;若第二数据与栈A中的字符不匹配,则将不匹配的字符放入栈B;若第二数据与栈A中的字符匹配,则打桩标记并将字符放入栈C;根据入栈顺序,从栈B中依次取出字符,若遇到打桩标记的位置,则从栈C对应的标记位置取出字符,最后得到带有标记的富文本数据。本申请提供的方法及装置通过堆栈特性,在已知纯文本下标的情况下,能够快速标记对应的富文本字段,适用于不同类型的格式,且可以自定义入栈条件,灵活性强。
附图说明
为了更直观地说明现有技术以及本申请,下面给出几个示例性的附图。应当理解,附图中所示的具体形状、构造,通常不应视为实现本申请时的限定条件;例如,本领域技术人员基于本申请揭示的技术构思和示例性的附图,有能力对某些单元(部件)的增/减/归属划分、具体形状、位置关系、连接方式、尺寸比例关系等容易作出常规的调整或进一步的优化。
图1为本申请实施例一提供的一种根据文本下标标记对应富文本的方法流程图;
图2为本申请实施例一提供的第一次入栈结构示意图;
图3为本申请实施例一提供的第二次入栈结构示意图。
具体实施方式
以下结合附图,通过具体实施例对本申请作进一步详述。
在本申请的描述中:除非另有说明,“多个”的含义是两个或两个以上。本申请中的术语“第一”、“第二”、“第三”等旨在区别指代的对象,而不具有技术内涵方面的特别意义(例如,不应理解为对重要程度或次序等的强调)。“包括”、“包含”、“具有”等表述方式,同时还意味着“不限于”(某些单元、部件、材料、步骤等)。
本申请中所引用的如“上”、“下”、“左”、“右”、“中间”等的用语,通常是为了便于对照附图直观理解,而并非对实际产品中位置关系的绝对限定。在未脱离本申请揭示的技术构思的情况下,这些相对位置关系的改变,当亦视为本申请表述的范畴。
实施例一
请参阅图1,本实施例提供了一种根据文本下标标记对应富文本的方法,通过堆栈(堆栈一种运算受限的线性表)特性,对需要的文本进行打桩分离,最后进行组合,从而得到富文本中需要标记的文字内容。该方法包括:
S1:获取带有富文本标签的第一数据;
具体的,获取的第一数据为java读取的word、excel或html等多种文本。
S2:复制第一数据得到第二数据;
S3:对第一数据进行格式化处理,并根据特定字符进行标记;
S4:将标记后的第一数据进行入栈处理,得到栈A;
S5:按字符顺序判断第二数据与栈A是否匹配;
S6:若第二数据与栈A中的字符不匹配,则将不匹配的字符放入栈B;
S7:若第二数据与栈A中的字符匹配,则打桩标记并将字符放入栈C;
请参阅图2和图3,具体的,将第二数据与栈A做匹配,每次进入一个字符。如果第一个字符不匹配,则将不匹配的字符放入栈B;如果第一个字符匹配,则暂停入栈,接着进入下一个字符并与第一个字符组合,组合后与栈A中的字符做匹配,如果有对应的匹配,则记录下标,打桩标记以后进入栈C;如果不匹配,则继续入栈。
S8:根据入栈顺序,从栈B中依次取出字符,若遇到打桩标记的位置,则从栈C对应的标记位置取出字符,最后得到带有标记的富文本数据。
具体的,所有数据标记完成以后会有栈B和栈C,然后根据入栈顺序,从栈B取出数据;遇到打桩的地方,则从栈C对应标记的位置取出数据,最终获得标记的、带有富文本个数的数据。
本实施例提供的一种根据文本下标标记对应富文本的方法,能够根据已知的纯文本下标的情况下,快速标记对应的富文本字段,且针对一些特殊处理的文本,可以自定义入栈条件,灵活性强,适用于不同类型的文本格式,减少了处理流程。
实施例二
本实施例提供了一种根据文本下标标记对应富文本的装置,包括:
获取模块,用于获取带有富文本标签的第一数据;
复制模块,用于复制第一数据得到第二数据;
标记模块,用于对第一数据进行格式化处理,并根据特定字符进行标记;
数据处理模块,用于将标记后的第一数据进行入栈处理,得到栈A;
判断模块,用于按字符顺序判断第二数据与栈A是否匹配;
若第二数据与栈A中的字符不匹配,则将不匹配的字符放入栈B;
若第二数据与栈A中的字符匹配,则打桩标记并将字符放入栈C;
组合模块,用于根据入栈顺序,从栈B中依次取出字符,若遇到打桩标记的位置,则从栈C对应的标记位置取出字符,最后得到带有标记的富文本数据。
优选的,第一数据为java读取的数据。
优选的,富文本标签包括word标签、excel标签和html标签。
优选的,按字符顺序判断第二数据与所述栈A是否匹配时,每次进入一个字符。
关于一种根据文本下标标记对应富文本的装置的具体限定可以参见上文中对于一种根据文本下标标记对应富文本的方法的限定,在此不再赘述。
实施例三
本实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现一种根据文本下标标记对应富文本的方法的步骤。
实施例四
本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现一种根据文本下标标记对应富文本的方法的步骤。
以上实施例的各技术特征可以进行任意的组合(只要这些技术特征的组合不存在矛盾),为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述;这些未明确写出的实施例,也都应当认为是本说明书记载的范围。
上文中通过一般性说明及具体实施例对本申请作了较为具体和详细的描述。应当理解,基于本申请的技术构思,还可以对这些具体实施例作出若干常规的调整或进一步的创新;但只要未脱离本申请的技术构思,这些常规的调整或进一步的创新得到的技术方案也同样落入本申请的权利要求保护范围。

Claims (10)

1.一种根据文本下标标记对应富文本的方法,其特征在于,包括:
获取带有富文本标签的第一数据;
复制所述第一数据得到第二数据;
对所述第一数据进行格式化处理,并根据特定字符进行标记;
将标记后的所述第一数据进行入栈处理,得到栈A;
按字符顺序判断所述第二数据与所述栈A是否匹配;
若所述第二数据与所述栈A中的字符不匹配,则将不匹配的字符放入栈B;
若所述第二数据与所述栈A中的字符匹配,则打桩标记并将字符放入栈C;
根据入栈顺序,从所述栈B中依次取出字符,若遇到打桩标记的位置,则从所述栈C对应的标记位置取出字符,最后得到带有标记的富文本数据。
2.根据权利要求1所述的根据文本下标标记对应富文本的方法,其特征在于,所述第一数据为java读取的数据。
3.根据权利要求1所述的根据文本下标标记对应富文本的方法,其特征在于,所述富文本标签包括word标签、excel标签或html标签。
4.根据权利要求1所述的根据文本下标标记对应富文本的方法,其特征在于,所述按字符顺序判断所述第二数据与所述栈A是否匹配时,每次进入一个字符。
5.一种根据文本下标标记对应富文本的装置,其特征在于,包括:
获取模块,用于获取带有富文本标签的第一数据;
复制模块,用于复制所述第一数据得到第二数据;
标记模块,用于对所述第一数据进行格式化处理,并根据特定字符进行标记;
数据处理模块,用于将标记后的所述第一数据进行入栈处理,得到栈A;
判断模块,用于按字符顺序判断所述第二数据与所述栈A是否匹配;
若所述第二数据与所述栈A中的字符不匹配,则将不匹配的字符放入栈B;
若所述第二数据与所述栈A中的字符匹配,则打桩标记并将字符放入栈C;
组合模块,用于根据入栈顺序,从所述栈B中依次取出字符,若遇到打桩标记的位置,则从所述栈C对应的标记位置取出字符,最后得到带有标记的富文本数据。
6.根据权利要求5所述的根据文本下标标记对应富文本的装置,其特征在于,所述第一数据为java读取的数据。
7.根据权利要求5所述的根据文本下标标记对应富文本的装置,其特征在于,所述富文本标签包括word标签、excel标签或html标签。
8.根据权利要求5所述的根据文本下标标记对应富文本的装置,其特征在于,所述按字符顺序判断所述第二数据与所述栈A是否匹配时,每次进入一个字符。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。
CN202310228644.5A 2023-03-10 2023-03-10 一种根据文本下标标记对应富文本的方法及装置 Active CN116306526B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310228644.5A CN116306526B (zh) 2023-03-10 2023-03-10 一种根据文本下标标记对应富文本的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310228644.5A CN116306526B (zh) 2023-03-10 2023-03-10 一种根据文本下标标记对应富文本的方法及装置

Publications (2)

Publication Number Publication Date
CN116306526A true CN116306526A (zh) 2023-06-23
CN116306526B CN116306526B (zh) 2024-01-02

Family

ID=86786421

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310228644.5A Active CN116306526B (zh) 2023-03-10 2023-03-10 一种根据文本下标标记对应富文本的方法及装置

Country Status (1)

Country Link
CN (1) CN116306526B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0911743A1 (en) * 1997-10-20 1999-04-28 Patrick Joseph King Converter for tag-delimited files
US6065024A (en) * 1996-07-11 2000-05-16 International Business Machines Corporation Embedded HTML documents downloaded and displayed simultaneously with primary HTML document
US6269189B1 (en) * 1998-12-29 2001-07-31 Xerox Corporation Finding selected character strings in text and providing information relating to the selected character strings
US20050138545A1 (en) * 2003-12-22 2005-06-23 Ylian Saint-Hilaire Efficient universal plug-and-play markup language document optimization and compression
US7356528B1 (en) * 2003-05-15 2008-04-08 At&T Corp. Phrase matching in documents having nested-structure arbitrary (document-specific) markup
US20090100056A1 (en) * 2006-06-19 2009-04-16 Tencent Technology (Shenzhen) Company Limited Method And Device For Extracting Web Information
CN105868257A (zh) * 2015-12-28 2016-08-17 乐视网信息技术(北京)股份有限公司 Xml数据解析方法、生成方法以及处理系统
US20210264102A1 (en) * 2018-11-28 2021-08-26 Tencent Technology (Shenzhen) Company Limited Method and apparatus for automatically splitting table content into columns, computer device, and storage medium
CN114818615A (zh) * 2022-04-23 2022-07-29 简单类型软件技术(上海)有限公司 一种结构化文本编辑器的实现方法
CN115309298A (zh) * 2022-08-30 2022-11-08 医渡云(北京)技术有限公司 基于富文本编辑器的文本结构化方法及装置、介质及设备
CN115481643A (zh) * 2022-09-29 2022-12-16 语联网(武汉)信息技术有限公司 一种互联网在线翻译工具中译稿高度还原文档样式的方法
CN115577683A (zh) * 2022-11-23 2023-01-06 中国人民解放军国防科技大学 一种html富文本内容转换方法、装置、设备和介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6065024A (en) * 1996-07-11 2000-05-16 International Business Machines Corporation Embedded HTML documents downloaded and displayed simultaneously with primary HTML document
EP0911743A1 (en) * 1997-10-20 1999-04-28 Patrick Joseph King Converter for tag-delimited files
US6269189B1 (en) * 1998-12-29 2001-07-31 Xerox Corporation Finding selected character strings in text and providing information relating to the selected character strings
US7356528B1 (en) * 2003-05-15 2008-04-08 At&T Corp. Phrase matching in documents having nested-structure arbitrary (document-specific) markup
US20050138545A1 (en) * 2003-12-22 2005-06-23 Ylian Saint-Hilaire Efficient universal plug-and-play markup language document optimization and compression
US20090100056A1 (en) * 2006-06-19 2009-04-16 Tencent Technology (Shenzhen) Company Limited Method And Device For Extracting Web Information
CN105868257A (zh) * 2015-12-28 2016-08-17 乐视网信息技术(北京)股份有限公司 Xml数据解析方法、生成方法以及处理系统
US20210264102A1 (en) * 2018-11-28 2021-08-26 Tencent Technology (Shenzhen) Company Limited Method and apparatus for automatically splitting table content into columns, computer device, and storage medium
CN114818615A (zh) * 2022-04-23 2022-07-29 简单类型软件技术(上海)有限公司 一种结构化文本编辑器的实现方法
CN115309298A (zh) * 2022-08-30 2022-11-08 医渡云(北京)技术有限公司 基于富文本编辑器的文本结构化方法及装置、介质及设备
CN115481643A (zh) * 2022-09-29 2022-12-16 语联网(武汉)信息技术有限公司 一种互联网在线翻译工具中译稿高度还原文档样式的方法
CN115577683A (zh) * 2022-11-23 2023-01-06 中国人民解放军国防科技大学 一种html富文本内容转换方法、装置、设备和介质

Also Published As

Publication number Publication date
CN116306526B (zh) 2024-01-02

Similar Documents

Publication Publication Date Title
EP2291010A1 (en) Structure processing method and apparatus for layout file
KR20150128921A (ko) 고정 서식 문서에서의 동아시아 레이아웃 특징들의 검출 및 재구성
US7293006B2 (en) Computer program for storing electronic files and associated attachments in a single searchable database
US6721451B1 (en) Apparatus and method for reading a document image
US7707488B2 (en) Analyzing lines to detect tables in documents
US20050172227A1 (en) Ensuring proper rendering order of bidirectionally rendered text
JP4150452B2 (ja) フォントの取得方法、登録方法および印刷方法
CN111090990B (zh) 一种医疗体检报告单文字识别及纠正方法
US11615244B2 (en) Data extraction and ordering based on document layout analysis
US20100010970A1 (en) Document searching device, document searching method, document searching program
EP2972991A2 (en) Detection and reconstruction of right-to-left text direction, ligatures and diacritics in a fixed format document
CN101655835B (zh) 电子文档中文字信息处理、输出和字符检索的方法及装置
Groom et al. Improved standardization of transcribed digital specimen data
CN116306526B (zh) 一种根据文本下标标记对应富文本的方法及装置
US7359850B2 (en) Spelling and encoding method for ideographic symbols
CN105320716A (zh) 数字出版物的自动标注方法
Jayabal et al. Challenges in generating bookmarks from TOC entries in e-books
Fonseca Cacho et al. Aligning ground truth text with OCR degraded text
CN117077619B (zh) 电子报版面解析方法、装置、电子设备及存储介质
JPH11212997A (ja) 書籍データ登録方法および書籍データ登録システム
WO1998033118A1 (en) Method of solving millennium problems of some application programs
Pandey Proposal to Encode Indic Siyaq Numbers in Unicode
JPH08287189A (ja) 文書処理装置
Huitfeldt et al. Document similarity
Kaufman The IBM information retrieval center-(ITIRC) system techniques and applications

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