文本修改历史的追溯方法及装置
技术领域
本发明涉及通信技术领域,尤其涉及一种文本修改历史的追溯方法及装置。
背景技术
现有技术中,文本修改痕迹的实现存在两种技术,一种是记录所有修改操作,通过合成所有的修改操作,生成修改痕迹;另一种是,根据不同修改的内容,根据内容本身的比较,来生成最终的修改痕迹。由于现在的应用系统采用B/S架构(Browser/Server,浏览器/服务器模式)技术变得越来越普遍,而B/S架构系统中的文本只能采用根据不同修改的内容,根据内容本身的比较,来生成最终的修改痕迹。
现有的对于B/S架构系统中的文本修改痕迹实现技术中,通常通过各种内容版本的比较,通过一定算法,生成一个修改痕迹版本,但这个修改痕迹仅能够显示谁删除什么内容,谁创建什么内容,但无法得知某个删除的内容是由谁创建的。例如对于新闻行业等,需要通过修改痕迹来对最终出错的稿件追溯是哪个修改人员的责任,在B/S架构系统中某个人对文本删除了一段内容,现有技术的方法无法得知这个人删除的是哪个人创建的内容,因此不便于文本修改的追责。如需要得知删除的文本段的创建者,则需要人工逐一比对各个版本,处理效率较低。
发明内容
本发明提供一种文本修改历史的追溯方法及装置,以实现在B/S架构系统中修改文本时对删除的文本段的追溯,快速获知删除的文本段的创建者。
本发明的一个方面是提供一种文本修改历史的追溯方法,该方法具体步骤如下:
获取在待处理文本版本中删除的文本段,并获取所述删除的文本段前后两个相邻文本段,其中所述前后两个相邻文本段分别为在所述待处理文本版本前的某一文本版本中创建的文本段;
分别获取所述前后两个相邻文本段被创建时所属文本版本的版本信息;
根据所述版本信息,将所述前后两个相邻文本段被创建时所属文本版本之中创建时间较晚的文本版本的创建者作为所述删除的文本段的创建者,并输出所述删除的文本段的创建者信息。
进一步的,所述获取在待处理文本版本中删除的文本段,包括:
获取所述待处理文本版本的前一文本版本;
对比所述待处理文本版本与所述待处理文本版本的前一文本版本的文本内容,获取在所述待处理文本版本中删除的文本段。
进一步的,所述获取所述删除的文本段前后两个相邻文本段,包括:
获取所述待处理文本版本前的所有文本版本;
对比所述待处理文本版本与所有文本版本的文本内容,将所述删除的文本段前后的文本内容按照被创建时所属文本版本的不同划分为文本段;
获取位于所述删除的文本段前后且与所述删除的文本段相邻的文本段,作为所述删除的文本段前后两个相邻文本段。
可选的,所述获取在待处理文本版本中删除的文本段前,还包括:
获取所述待处理文本版本前的所有文本版本;
对比所述待处理文本版本和所有文本版本的文本内容中任意相邻两个文本版本的文本内容,获取修改痕迹对照文本,其中所述修改痕迹对照文本包含在各文本版本中创建的文本段和删除的文本段,并分别标记有对应的文本版本的版本信息;
所述获取在待处理文本版本中删除的文本段,并获取所述删除的文本段前后两个相邻文本段,包括:
从所述修改痕迹对照文本中获取在待处理文本版本中删除的文本段,并获取所述删除的文本段前后两个相邻文本段。
进一步的,所述获取修改痕迹对照文本后,还包括:
将不同文本版本创建的文本段用不同的颜色渲染,将不同文本版本删除的文本段用不同样式的删除线渲染;
所述输出所述删除的文本段的创建者信息,包括:
对所述修改痕迹对照文本中对应的删除的文本段标记所述删除的文本段的创建者信息。
本发明的另一个方面是提供一种文本修改历史的追溯装置,所述装置包括:
文本段获取模块,用于获取在待处理文本版本中删除的文本段,并获取所述删除的文本段前后两个相邻文本段,其中所述前后两个相邻文本段分别为在所述待处理文本版本前的某一文本版本中创建的文本段;
版本信息获取模块,用于分别获取所述前后两个相邻文本段被创建时所属文本版本的版本信息;
处理模块,用于根据所述版本信息,将所述前后两个相邻文本段被创建时所属文本版本之中创建时间较晚的文本版本的创建者作为所述删除的文本段的创建者,并输出所述删除的文本段的创建者信息。
进一步的,所述文本段获取模块具体用于:
获取所述待处理文本版本的前一文本版本;
对比所述待处理文本版本与所述待处理文本版本的前一文本版本的文本内容,获取在所述待处理文本版本中删除的文本段。
进一步的,所述文本段获取模块具体用于:
获取所述待处理文本版本前的所有文本版本;
对比所述待处理文本版本与所有文本版本的文本内容,将所述删除的文本段前后的文本内容按照被创建时所属文本版本的不同划分为文本段;
获取位于所述删除的文本段前后且与所述删除的文本段相邻的文本段,作为所述删除的文本段前后两个相邻文本段。
可选的,所述装置还包括预处理模块,所述预处理模块用于:
获取所述待处理文本版本前的所有文本版本;
对比所述待处理文本版本和所有文本版本的文本内容中任意相邻两个文本版本的文本内容,获取修改痕迹对照文本,其中所述修改痕迹对照文本包含在各文本版本中创建的文本段和删除的文本段,并分别标记有对应的文本版本的版本信息;
所述文本段获取模块具体用于:
从所述修改痕迹对照文本中获取在待处理文本版本中删除的文本段,并获取所述删除的文本段前后两个相邻文本段。
进一步的,所述装置还包括渲染模块,所述渲染模块用于:
将不同文本版本创建的文本段用不同的颜色渲染,将不同文本版本删除的文本段用不同样式的删除线渲染;
所述处理模块具体用于:
对所述修改痕迹对照文本中对应的删除的文本段标记所述删除的文本段的创建者信息。
本发明提供的文本修改历史的追溯方法及装置,通过获取在待处理文本版本中删除的文本段,并获取所述删除的文本段前后两个相邻文本段,其中所述前后两个相邻文本段分别为在所述待处理文本版本前的某一文本版本中创建的文本段;分别获取所述前后两个相邻文本段被创建时所属文本版本的版本信息;根据所述版本信息,将所述前后两个相邻文本段被创建时所属文本版本之中创建时间较晚的文本版本的创建者作为所述删除的文本段的创建者,并输出所述删除的文本段的创建者信息,从而实现了快速查看删除的文本段的创建者,处理效率较高,且其准确性能满足实际应用的需要。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的文本修改历史的追溯方法流程图;
图2为本发明另一实施例提供的文本修改历史的追溯方法流程图;
图3为本发明实施例提供的文本修改历史的追溯装置的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的文本修改历史的追溯方法流程图。如图1所示,本实施例提供了一种文本修改历史的追溯方法,该方法具体步骤如下:
S101、获取在待处理文本版本中删除的文本段,并获取所述删除的文本段前后两个相邻文本段,其中所述前后两个相邻文本段分别为在所述待处理文本版本前的某一文本版本中创建的文本段。
在本实施例中,待处理文本版本为需要查看删除的文本段的创建者的文本版本,可以为最终文本版本或修改过程中的任一文本版本,例如当前已修改了五版,如果想要查看在第三版中删除了哪些文本段,以及删除的文本段是在第三版之前的哪一版本中创建的或者创建者是谁时,则将第三版作为待处理文本版本。此外,待处理文本版本中删除的文本段是在上一文本版本的基础上进行的删除,本实施例中可通过对比待处理文本版本与待处理文本版本的前一文本版本的文本内容,从而获取在待处理文本版本中删除的文本段,也即获取在待处理文本版本中删除的文本段可以通过以下步骤实现:
S201、获取所述待处理文本版本的前一文本版本。
S202、对比所述待处理文本版本与所述待处理文本版本的前一文本版本的文本内容,获取在所述待处理文本版本中删除的文本段。
当然也可以在修改每一文本版本时保留修改痕迹,类似与Word文档中的修订模式,通过查找修改痕迹中的删除痕迹,从而获得删除的文本段,或者其他能够实现获取在待处理文本版本中删除的文本段的方法亦可。
在获得待处理文本版本中的任一个删除的文本段后,获取该删除的文本段前后两个相邻文本段,相邻文本段分别为在待处理文本版本前的某一文本版本中创建的文本段。例如对于第三版中某一删除的文本段,该删除的文本段前面的相邻的文本均为第一文本版本创建的,则将其识别为一个文本段,作为删除的文本段前相邻文本段,而该删除的文本段前面的相邻的文本中既包含第一文本版本创建的文本,也包含第二文本版本创建的文本,而第二文本版本创建的文本直接与该删除的文本段相临,因此将第二文本版本创建的文本识别为一个文本段,作为删除的文本段后相邻文本段。其中,获取所述删除的文本段前后两个相邻文本段,具体可以对比待处理文本版本与待处理文本版本前的所有文本版本,从而获得删除的文本段前后两个相邻文本段。也即获取所述删除的文本段前后两个相邻文本段可以通过以下步骤实现:
S203、获取所述待处理文本版本前的所有文本版本。
S204、对比所述待处理文本版本与所有文本版本的文本内容,将所述删除的文本段前后的文本内容按照被创建时所属文本版本的不同划分为文本段。
S205、获取位于所述删除的文本段前后且与所述删除的文本段相邻的文本段,作为所述删除的文本段前后两个相邻文本段。
当然也可以在修改每一文本版本时保留修改痕迹,通过查找修改痕迹中删除痕迹前后相邻的文本段,从而获得删除的文本段前后两个相邻文本段,或者其他能够实现获取所述删除的文本段前后两个相邻文本段的方法亦可。
需要说明的是,前后两个相邻文本段分别为在待处理文本版本前的某一文本版本中创建的文本段,对于待处理文本版本删除的文本段前后两个相邻文本段如果包含待处理文本版本或待处理文本版本以后的文本版本中创建的文本段,则继续沿先前或向后的方向查找相邻的文本段,直至找到距待处理文本版本删除的文本段最近的一文本段,该文本段满足由待处理文本版本前的某一文本版本中创建的条件,则将该文本段作为所述删除的文本段之前或之后相邻文本段。
S102、分别获取所述前后两个相邻文本段被创建时所属文本版本的版本信息。
在本实施例中,当获取到删除的文本段前后两个相邻文本段后,再分别获取该前后两个相邻文本段的版本信息,其中版本信息可以包含版本号(例如第几版本)、创建者以及创建时间等等,当然并不仅限于所列举的信息。具体的,当获取到删除的文本段前后两个相邻文本段后,可以查找这两个相邻文本段被创建时所属文本版本,从而获取对应的版本信息。
S103、根据所述版本信息,将所述前后两个相邻文本段被创建时所属文本版本之中创建时间较晚的文本版本的创建者作为所述删除的文本段的创建者,并输出所述删除的文本段的创建者信息。
在本实施例中,根据版本信息,比较删除的文本段前相邻文本段被创建时所属文本版本和删除的文本段后相邻文本段被创建时所属文本版本的创建时间或者版本号,确定创建时间较晚的文本版本,并认为删除的文本段是在该创建时间较晚的文本版本中创建的,将该文本版本的创建者作为删除的文本段的创建者。
例如在第一文本版本中创建了一个文本“1234”,在第二文本版本中在“2”和“3”之间创建了“abcd”文本段,也即此时的文本为“12abcd34”,在第三文本版本中删除了文本段“ab”,此时的文本为“12cd34”,为显示清楚,此处用删除线来将文本表示为“12abcd34”,其中第三文本版本删除的文本段“ab”前相邻文本段“12”为第一文本版本创建的,第三文本版本删除的文本段“ab”后相邻文本段“cd”为第二文本版本创建的,其中第二文本版本较第一文本版本创建时间晚,因此认为删除的文本段“ab”是在第二文本版本创建的,将第二文本版本的创建者作为删除的文本段“ab”的创建者。
需要说明的是,本实施例提供的方法为获得删除内容的创建者信息的近似算法。如果在第三文本版本中删除了第二文本版本中创建的全部文本段“abcd”,此时第三文本版本删除的文本段“abcd”前后相邻文本段均为第一文本版本创建的,则此时存在一定的判断误差。或者如果删除的文本段属于两个或多个文本版本创建的,如第三版本中删除了第一文本版本创建的“2”以及第二文本版本中创建的全部文本段“ab”,此时第三文本版本删除的文本段“2ab”前相邻文本段为第一文本版本创建的,其后相邻文本段为第二文本版本创建的,则认为“2ab”为第二文本版本创建,也存在一定的判断误差。在实际应用中,考虑到上述情况很少见,因此存在这样的误差并影响实际的使用,也即这样的误差是工程应用能够接受的。当然要彻底解决这种误差,需要两两文本版本进行比较,再定位删除文本段的创建信息,但这样做的计算量会很大,处理效率下降,除非有特殊要求,不建议用这种方法来实现文本修改历史的追溯的完全正确。
本实施例提供的文本修改历史的追溯方法,通过获取在待处理文本版本中删除的文本段,并获取所述删除的文本段前后两个相邻文本段,其中所述前后两个相邻文本段分别为在所述待处理文本版本前的某一文本版本中创建的文本段;分别获取所述前后两个相邻文本段被创建时所属文本版本的版本信息;根据所述版本信息,将所述前后两个相邻文本段被创建时所属文本版本之中创建时间较晚的文本版本的创建者作为所述删除的文本段的创建者,并输出所述删除的文本段的创建者信息,从而实现了快速查看删除的文本段的创建者,处理效率较高,且其准确性能满足实际应用的需要。
图2为本发明另一实施例提供的文本修改历史的追溯方法流程图。如图2所示,在上述实施例的基础上,本实施例提供一种文本修改历史的追溯方法,该方法具体步骤如下:
S301、获取所述待处理文本版本前的所有文本版本。
S302、对比所述待处理文本版本和所有文本版本的文本内容中任意相邻两个文本版本的文本内容,获取修改痕迹对照文本,其中所述修改痕迹对照文本包含在各文本版本中创建的文本段和删除的文本段,并分别标记有对应的文本版本的版本信息。
本实施例通过对比待处理文本版本以前任意相邻文本版本的文本内容,获取修改痕迹对照文本。具体的,通过分析不同文本版本的文本内容,把每一文本版本的文本内容切分成文本段,以把不同文本版本中不同的内容给区分出来,其中文本段的状态为创建状态或者删除状态,例如第一个文本版本,所有的文本段都是创建状态,从第二个文本版本开始,文本段则包含可创建状态的文本段和/或删除状态的文本段,也即需要分析在后的文本版本在前面文本版本的基础上,存在哪些创建状态的文本段,以及存在哪些删除状态的文本段。最后将对比结果合并处理,形成修改痕迹对照文本,修改痕迹对照文本包含在各文本版本中创建的文本段和删除的文本段,并分别标记上对应的文本版本的版本信息。
进一步的,所述获取修改痕迹对照文本后,还可包括:
将不同文本版本创建的文本段用不同的颜色渲染,将不同文本版本删除的文本段用不同样式的删除线渲染。
本实施例中,通过对修改痕迹对照文本中不同文本版本创建的文本段以及不同文本版本删除的文本段进行不同的渲染,从而清晰的呈现不同文本版本中所作出的修改。本实施例中可采用html的CSS3来渲染修改痕迹的效果。
S303、从所述修改痕迹对照文本中获取在待处理文本版本中删除的文本段,并获取所述删除的文本段前后两个相邻文本段。
在本实施例中,由于已经在修改痕迹对照文本中区分了不同文本版本中创建的文本段以及删除的文本段,因此通过查找修改痕迹对照文本中在待处理文本版本删除的文本段,并查找该删除的文本段前后两个相邻文本段即可,其中前后两个相邻文本段分别为在所述待处理文本版本前的某一文本版本中创建的文本段。
S304、分别获取所述前后两个相邻文本段被创建时所属文本版本的版本信息。
S305、根据所述版本信息,将所述前后两个相邻文本段被创建时所属文本版本之中创建时间较晚的文本版本的创建者作为所述删除的文本段的创建者。
S306、对所述修改痕迹对照文本中对应的删除的文本段标记所述删除的文本段的创建者信息。
在本实施例中,通过将删除的文本段的创建者信息标记在修改痕迹对照文本中,从而实现输出删除的文本段的创建者信息,以展示给用户,便于用户快速查看。当然也可在修改痕迹对照文本中对删除的文本段的创建者信息进行渲染。
本实施例的文本修改历史的追溯方法,通过获取在待处理文本版本中删除的文本段,并获取所述删除的文本段前后两个相邻文本段,其中所述前后两个相邻文本段分别为在所述待处理文本版本前的某一文本版本中创建的文本段;分别获取所述前后两个相邻文本段被创建时所属文本版本的版本信息;根据所述版本信息,将所述前后两个相邻文本段被创建时所属文本版本之中创建时间较晚的文本版本的创建者作为所述删除的文本段的创建者,并输出所述删除的文本段的创建者信息,从而实现了快速查看删除的文本段的创建者,处理效率较高,且其准确性能满足实际应用的需要。
图3为本发明实施例提供的文本修改历史的追溯装置的结构图。如图3所示,本实施例提供一种文本修改历史的追溯装置,所述装置包括:文本段获取模块401、版本信息获取模块402以及处理模块403。
其中,文本段获取模块401,用于获取在待处理文本版本中删除的文本段,并获取所述删除的文本段前后两个相邻文本段,其中所述前后两个相邻文本段分别为在所述待处理文本版本前的某一文本版本中创建的文本段;
版本信息获取模块402,用于分别获取所述前后两个相邻文本段被创建时所属文本版本的版本信息;
处理模块403,用于根据所述版本信息,将所述前后两个相邻文本段被创建时所属文本版本之中创建时间较晚的文本版本的创建者作为所述删除的文本段的创建者,并输出所述删除的文本段的创建者信息。
进一步的,所述文本段获取模块401具体用于:
获取所述待处理文本版本的前一文本版本;
对比所述待处理文本版本与所述待处理文本版本的前一文本版本的文本内容,获取在所述待处理文本版本中删除的文本段。
进一步的,所述文本段获取模块401具体用于:
获取所述待处理文本版本前的所有文本版本;
对比所述待处理文本版本与所有文本版本的文本内容,将所述删除的文本段前后的文本内容按照被创建时所属文本版本的不同划分为文本段;
获取位于所述删除的文本段前后且与所述删除的文本段相邻的文本段,作为所述删除的文本段前后两个相邻文本段。
可选的,所述装置还包括预处理模块404,所述预处理模块404用于:
获取所述待处理文本版本前的所有文本版本;
对比所述待处理文本版本和所有文本版本的文本内容中任意相邻两个文本版本的文本内容,获取修改痕迹对照文本,其中所述修改痕迹对照文本包含在各文本版本中创建的文本段和删除的文本段,并分别标记有对应的文本版本的版本信息;
所述文本段获取模块401具体用于:
从所述修改痕迹对照文本中获取在待处理文本版本中删除的文本段,并获取所述删除的文本段前后两个相邻文本段。
进一步的,所述装置还包括渲染模块405,所述渲染模块405用于:
将不同文本版本创建的文本段用不同的颜色渲染,将不同文本版本删除的文本段用不同样式的删除线渲染;
所述处理模块403具体用于:
对所述修改痕迹对照文本中对应的删除的文本段标记所述删除的文本段的创建者信息。
本发明实施例提供的文本修改历史的追溯装置可以具体用于执行上述图1所提供的方法实施例,具体功能此处不再赘述。
本实施例提供的文本修改历史的追溯装置,通过获取在待处理文本版本中删除的文本段,并获取所述删除的文本段前后两个相邻文本段,其中所述前后两个相邻文本段分别为在所述待处理文本版本前的某一文本版本中创建的文本段;分别获取所述前后两个相邻文本段被创建时所属文本版本的版本信息;根据所述版本信息,将所述前后两个相邻文本段被创建时所属文本版本之中创建时间较晚的文本版本的创建者作为所述删除的文本段的创建者,并输出所述删除的文本段的创建者信息,从而实现了快速查看删除的文本段的创建者,处理效率较高,且其准确性能满足实际应用的需要。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。