一种文本框信息处理方法、装置、电子设备及存储介质
技术领域
本公开涉及页面数据处理
技术领域
,尤其涉及一种文本框信息处理方法、装置、电子设备及存储介质。背景技术
目前,在一些基于网页的社交应用中,用户可以通过在文本框中输入关键字符“@”或者“#”等与其他用户进行交互或参与到某个话题,如@某个人或者#话题。
相关技术中,用户输入关键字符之后通常需要手动输入关键词来关联到需要交互的对象。如一些传统的处理方式中,用户在文本框中输入信息,如“@user1看过这个视频没有?”,后台服务器通常是直接以用户在关键字符后面输入的关键词(如用户昵称)来作为关联的交互对象进行展示,此时文本框中展示的交互对象就是“user1”。目前的相关技术中,文本框中信息展示和交互的方式过于单一,无法满足用户的互动需求。
发明内容
本公开提供一种文本框信息处理方法、装置、电子设备及存储介质,提供新的文本框互动方式,丰富用户体验,至少解决文本框中信息展示和交互的方式过于单一的技术问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种文本框信息处理方法,包括:
检测文本框中当前光标所处的第一位置和所述文本框中预设关键字符所处的第二位置;
当所述第一位置和所述第二位置之间的内容为符合条件的待匹配内容时,对所述待匹配内容进行匹配,得到匹配结果;
展示包括所述匹配结果的匹配结果列表;
响应账户的选择指令,将所述账户在所述匹配结果列表中选择的匹配结果作为一个整体文本块插入到所述文本框中。
可选的一些实施方式中,所述待匹配内容包括所述预设关键字符所指示的目标对象;
所述匹配结果列表中的匹配结果包括:基于对所述目标对象进行匹配获得的内容。
可选的一些实施方式中,在将所述账户在所述匹配结果列表中选择的匹配结果作为一个整体文本块插入到所述文本框中之前,还包括:
删除所述待匹配内容。
可选的一些实施方式中,当所述第一位置和所述第二位置之间的内容为符合条件的待匹配内容时,对所述待匹配内容进行匹配,得到匹配结果,包括:
当所述第一位置和所述第二位置之间的内容为不包含空白字符的待匹配内容时,对所述待匹配内容进行匹配,得到匹配结果。
可选的一些实施方式中,所述展示包括所述匹配结果的匹配结果列表包括:
确定展示匹配结果列表的位置区域;
在所述位置区域添加文档对象模型;
基于所述文档对象模型展示包括所述匹配结果的匹配结果列表。
可选的一些实施方式中,所述响应账户的选择指令,将所述账户在所述匹配结果列表中选择的匹配结果作为一个整体文本块插入到所述文本框中,包括:
响应所述账户的选择指令,确定从所述匹配结果列表中选择的匹配结果;
将所述匹配结果与预设的附加信息按照预设组合规则进行组合,生成匹配项;
将所述匹配项作为一个整体文本框插入到所述文本框中。
可选的一些实施方式中,所述生成匹配项包括:
设置所述匹配项中的附加信息在所述文本框中展示时为不可见。
可选的一些实施方式中,在所述将所述匹配项作为一个整体文本框插入到所述文本框中之后,包括:
修改所述匹配项的文本属性数据和/或为所述匹配项增加预设的动画效果,得到所述匹配项的预设展示样式;
按照预设样式在所述文本框中展示所述匹配项。
可选的一些实施方式中,在所述响应账户的选择指令,将所述账户在所述匹配结果列表中选择的匹配结果作为一个整体文本块插入到所述文本框中之后,还包括:
遍历所述匹配项中的文本内容,得到文本内容中各个节点对应的解析内容;
根据所述预设组合规则确定拼接顺序,按照所述拼接顺序对所述解析内容进行拼接,得到目标解析内容。
根据本公开实施例的第二方面,提供一种文本框信息处理装置,包括:
检测模块,用于检测文本框中当前光标所处的第一位置和所述文本框中预设关键字符所处的第二位置;
匹配模块,用于当所述第一位置和所述第二位置之间的内容为符合条件的待匹配内容时,对所述待匹配内容进行匹配,得到匹配结果;
匹配结果展示模块,用于展示包括所述匹配结果的匹配结果列表;
插入模块,用于响应账户的选择指令,将所述账户在所述匹配结果列表中选择的匹配结果作为一个整体文本块插入到所述文本框中。
可选的一些实施方式中,所述待匹配内容包括所述预设关键字符所指示的目标对象;
所述匹配结果列表中的匹配结果包括:基于对所述目标对象进行匹配获得的内容。
可选的一些实施方式中,所述装置还包括:
删除模块,用于删除所述待匹配内容或在所述第一位置和第二位置之间已经插入的匹配结果。
可选的一些实施方式中,当所述第一位置和所述第二位置之间的内容为符合条件的待匹配内容时,对所述待匹配内容进行匹配,得到匹配结果,包括:
当所述第一位置和所述第二位置之间的内容为不包含空白字符的待匹配内容时,对所述待匹配内容进行匹配,得到匹配结果。
可选的一些实施方式中,所述展示包括所述匹配结果的匹配结果列表包括:
确定展示匹配结果列表的位置区域;
在所述位置区域添加文档对象模型;
基于所述文档对象模型展示包括所述匹配结果的匹配结果列表。
可选的一些实施方式中,所述响应账户的选择指令,将所述账户在所述匹配结果列表中选择的匹配结果作为一个整体文本块插入到所述文本框中,包括:
响应所述账户的选择指令,确定从所述匹配结果列表中选择的匹配结果;
将所述选择的匹配结果与预设的附加信息按照预设组合规则进行组合,生成匹配项;
将所述匹配项作为一个整体文本框插入到所述文本框中。
可选的一些实施方式中,所述生成匹配项包括:
设置所述匹配项中的附加信息在所述文本框中展示时为不可见
可选的一些实施方式中,所述装置还包括:
修改模块,用于修改所述匹配项的文本属性数据和/或为所述匹配项增加预设的动画效果,得到所述匹配项的预设展示样式;
匹配项显示模块,用于按照预设样式在所述文本框中展示所述匹配项。
可选的一些实施方式中,所述装置还包括:
遍历模块,用于遍历所述匹配项中的文本内容,得到文本内容中各个节点对应的解析内容;
拼接模块,用于根据所述预设组合规则确定拼接顺序,按照所述拼接顺序对所述解析内容进行拼接,得到目标解析内容。
本公开实施例的第三方面,还提供一种电子设备,包括:
至少一个处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现本公开任一所述的方法。
本公开实施例的第四方面,还提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令被电子设备的处理器执行时,使得所述电子设备能够执行本公开任一所述的方法。
本公开实施例的另一方面,还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现本公开任一所述的方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
本公开实施例方案中,可以检测获取文本框中的光标位置和预设关键字符确之间的内容,若所述内容为符合条件的待匹配内容,则对所述待匹配内容进行匹配,得到匹配结果。匹配结果可以以匹配结果列表的形式在页面中展示,以供用户选择。然后可以将用户在在所述匹配结果列表中选择的匹配结果作为一个整体文本块插入到所述文本框中。本公开实施例方案,为用户提供了服务器针对待匹配内容进行匹配得到的匹配结果列表,将用户选择的匹配结果作为整体文本块插入到文本框中,可以动态的匹配用户输入的内容,并进行展示,以供用户选择,丰富交互方式,提升用户交互体验。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种文本框信息处理方法的应用环境图。
图2是根据一示例性实施例示出的一种文本框信息处理方法的流程图。
图3是根据一示例性实施例示出的一种文本框信息处理方法的流程图。
图4是根据一示例性实施例示出的一种文本框信息处理方法中文本块插入处理的流程图。
图5是根据一示例性实施例示出的一种文本框信息处理方法的流程图。
图6是根据一示例性实施例示出的一种文本框信息处理方法的流程图。
图7是根据一示例性实施例示出的一种文本框信息处理装置的框图。
图8是根据一示例性实施例示出的一种文本框信息处理装置的框图。
图9是根据一示例性实施例示出的一种文本框信息处理装置的框图。
图10是根据一示例性实施例示出的一种文本框信息处理装置的框图。
图11是根据一示例性实施例示出的一种电子设备的内部结构图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。例如若使用到第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
本公开所提供的一种文本框信息处理方法,可以应用于如图1所示的应用环境中。其中,终端110可以在网站网页或APP应用的页面中常常需要与其他对象交互,通过例如@某个人或#某个话题来提醒某个人或参与到某个话题。例如,某APP中通常提供发布信息或回复信息的文本框,用户可以在文本框中使用@符号+用户名称来提醒某个人,此外也可以在用户名称后面输入一些内容,提醒被@的人查看输入内容。如“@user1看过这个视频没有?”。目前包括用户的名称“user1”和展示给用户user1的内容“看过这个视频没有?”的内容通常都是用户手动输入的原始文本内容。在本实施例的方案中,服务器可以将当前光标位置与预设关键字符之间的内容单独提取出来,然后进行动态的匹配,将获取相匹配结果展示给用户,用户可以选择匹配结果插入文本框中,增加多元化的交互方式。并且用户选择的匹配结果是作为一个整体文本块插入到文本框中。这样,若要删除插入的匹配结果,可以将匹配结果作为一个整体进行删除,避免了用户逐个字符删除之前输入的信息内容导致的操作复杂性,简化了用户删除操作,提升了用户交互体验。本公开的提供的技术方案可以应用于所述终端110中,可以动态的匹配出用户输入内容,提供多元化的交互方式,提高交互体验。本公开实施例中所述的终端110可以包括但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑、可穿戴设备、车载设备、医疗设备等。所述的终端110可以是可移动终端,如智能手机,也可以是相对固定的,如自助服务终端,也可以是可拆卸的终端设备。当然,本公开实施例中不排除所述的终端(包括下述所描述的电子设备)也可以是服务器、服务器集群、分布式分系统、云处理平台、包含区块链节点的服务器以及其组合的设备,并不限定于一定是实施于用户一侧的设备。
下面以用户在某应用页面中的文本框输入信息的实施场景对本公开实施例方案进行说明。本公开提供的一些实施例可以通过多种文本框信息处理语言、组件等实现。例如可以通过Vue组件实现。Vue的一个开源的JavaScript的Web应用框架。本公开的一些实施例以Vue组件为案例进行一个示例说明。
图2是根据一示例性实施例示出的一种文本框信息处理方法的流程图,如图2所示,所述方法可以用于终端110中,可以包括以下步骤。
在步骤S202中,检测文本框中当前光标所处的第一位置和所述文本框中预设关键字符所处的第二位置。
在步骤S204中,当所述第一位置和所述第二位置之间的内容为符合条件的待匹配内容时,对所述待匹配内容进行匹配,得到匹配结果。
本实施例中可以监听用户的输入事件,提取文本框中当前光标所处的位置(第一位置)和预设关键字符的位置(第二位置)之间的内容,然后可以判定该内容是否可以作为待匹配内容进行进一步匹配,已获取匹配结果。例如可以终端的组件可以提供一个元素作为输入框,并设置该元素的contentEditable(网页中节点元素的属性,设置这个属性为true,用户就能够编辑对应的节点元素)为true。然后监听用户的输入事件,即input事件。通过获取被设置contentEditable为true的元素的innerText(文本内容,表示一个dom及其后台渲染的文本内容)来获取用户输入的内容。接着组件可以使用浏览器的window.getSelection(浏览器提供的一个方法,用于获取当前文本范围内光标所在的位置)获取到当前光标的位置,并将光标之前用户输入的内容全部提取出来记为toMatchedText(匹配文本)。然后可以提取出toMatchedText最后一个预设关键字符,如@符号的位置,然后把toMatchedText最后一个@符号后面的内容提取出来记为chunk(分块)。
所述的预设关键字符通常可以包括“@”、“#”等用来链接到指定对象的字符。所述预设关键字符可以包括指定类型的关键字符或者指定位置处的关键字符。在具体的一个实施示例中,可以采用input事件来捕捉用户当前光标所处的位置,将其作为第一位置。在触发input事件时,可以对当前光标所处的第一位置进行检测,例如当前内容是“@user001”,此时用户的光标在“001”之后,这时可以提取到预设关键字符“@”到当前光标所处的第二位置之间的内容为“user001”。
当存在多个关键字符时,所述的预设关键字符可以指指定位置处的关键字符,如文本框内容中第一个或最后一个关键字符。
在步骤S206中,展示包括所述匹配结果的匹配结果列表。
获得待匹配内容之后,可以对所述待匹配内容进行匹配,获取相应的匹配结果。进行匹配的执行方可以是前述所述的终端110或终端的组件,其他的实施方式中,也可以是服务器。例如,终端可以获取待匹配内容,然后将待匹配内容传输给服务器,服务器进行匹配获得匹配结果后再返回给终端。
所述的匹配结果根据所述待匹配内容所包含的信息可以有相应的匹配处理方式。一般的,根据当前光标所处的第一位置,所述待匹配内容可以包括所述预设关键字符所指示的目标对象,如“@”字符后面的用户名称,相应的所述匹配结果列表中的匹配结果包括:基于对所述目标对象进行匹配获得的内容。这样,可以提供给用户更多的插入信息的选择,丰富文本框插入的信息内容,提高用户交互体验。另一些实施方式中也可以包括与所述目标对象交互的交互内容,如“@user001去看电影吗?”中的“去看电影吗?”。因此,所述匹配结果可以包括对所述目标对象进行匹配获取的匹配结果,也可以包括对所述交互内容进行匹配获取的匹配结果。具体匹配到的匹配结果,可以预先设置相应的算法进行处理,如根据“user001”匹配到“user001”,或者还匹配到与“user001”相关联的“user002”,根据“去看电影吗?”以及例如某个用户的地理位置的属性信息匹配得到“一起去XX路XX电影院看电影吗”等。当然,也可以根据“user001”以及预设周期内的行为数据、地理位置的属性信息等匹配得到“一起去XX路XX电影院看电影吗”的匹配结果。
本实施例中可以得到一个或多个匹配结果,匹配结果可以以匹配结果列表的形式在终端进行展示,以供用户进行查看和选择。
在步骤S208中,响应账户的选择指令,将所述账户在所述匹配结果列表中选择的匹配结果作为一个整体文本块插入到所述文本框中。
所述的账户通常指对文本框进行操作的用户。账户可以从匹配结果列表中选择一个或多个匹配结果。账户选择匹配结果后,本公开实施例方案创新的将选择的匹配内容作为一个整体文本块插入到文本框中,而这个整体文本框在插入到文本框中时是作为不可分割的一个整体插入的,并且,若要删除该整体文本块,也只能将其整体删除。这样使得用户无需逐个字的删除当前光标之前输入的内容,实现用户快速删除内容,提高删除效率,提高用户文本框的交互体验。
本公开实施例方案,为用户提供了服务器针对待匹配内容进行匹配得到的匹配结果列表,将用户选择的匹配结果作为整体文本块插入到文本框中,可以动态的匹配用户输入的内容,并进行展示,以供用户选择,丰富交互方式,提升用户交互体验。
当然,本公开的一些实施例中,所述待匹配内容可以包括所述预设关键字符所指示的目标对象和与所述目标对象交互的交互内容;所述匹配结果列表中的匹配结果可以包括:基于所述目标对象和所述交互内容进行匹配获得的匹配结果。这样,待匹配内容不仅可以包括所述预设关键字符所指示的目标对象,还可以与所述目标对象交互的交互内容。相应的,终端或服务器一侧可以根据所述目标对象、交互内容中的任意一个或组合去做匹配。这样,由于待匹配内容还可以包括目标对象、交互内容等多个信息内容,因此可以更加灵活的匹配出更多内容的匹配内容,并可以根据目标对象和交互内容匹配出更加符合账户需求的匹配内容,匹配出的内容更加丰富、准确,提升用户文本框界面交互体验。
本公开的另一些实施例中,用户选择的匹配结果插入到文本框之前,文本框中已经存在待匹配内容或之前已经插入的匹配结果。此时,可以先删除所述待匹配内容或在所述第一位置和第二位置之间已经插入的匹配结果,之后再将最新选择了匹配结果插入到文本框中。图3是根据一示例性实施例示出的一种文本框信息处理方法的流程图。如图3所示,在将所述账户在所述匹配结果列表中选择的匹配内容作为一个整体文本块插入到所述文本框中之前,还包括:
S302:删除所述待匹配内容或在所述第一位置和第二位置之间已经插入的匹配结果。
本公开实施例,可以先将文本框中之前输入的待匹配内容删除,重新插入用户选择的匹配内容。删除之前输入的待匹配内容,展示用户从匹配结果列表选择的匹配内容,可以简化文本框的展示信息内容,提高文本框界面的交互体验。并且插入到文本框中的匹配结果是作为不可分割的一个整体插入的,因此,若要删除该之前插入的匹配结果,也只能将其整体删除。这样使得用户无需逐个字的删除当前输入的内容,实现用户快速删除内容,提高删除效率。
本公开的所述方法的另一些实施例中,可以根据空白字符来判断第一位置和第二位置之间的内容是否为符合条件的待匹配内容。本公开提供所述方法的另一些实施例中,当所述第一位置和所述第二位置之间的内容为符合条件的待匹配内容时,对所述待匹配内容进行匹配,得到匹配结果,可以包括:
当所述第一位置和所述第二位置之间的内容为不包含空白字符的待匹配内容时,对所述待匹配内容进行匹配,得到匹配结果。
第一位置和第二位置之间的内容可以包括多种信息内容,本实施例可以根据空白字符来判定用户输入的是不是连续的内容。如果不是连续的,则可以不需要进行匹配。具体的一种实现方式中,可以通过这个"/\s/"正则匹配第一位置和第二位置之间的内容是否有空白字符。本实施例根据空白字符来确定所述第一位置和第二位置之间的内容是否为待匹配内容,更加符合用户文本框输入信息的操作习惯,可以更加快速的区分出不同的信息对象,提高终端或服务器对待匹配内容进行匹配的处理效率。
本公开提供的所述方法的另一个实施例中,所述展示包括所述匹配结果的匹配结果列表包括:
确定展示匹配结果列表的位置区域;
在所述位置区域添加文档对象模型;
基于所述文档对象模型展示包括所述匹配结果的匹配结果列表。
可以预先指定匹配结果列表展示的位置区域。一般的,匹配结果列表展示的位置区域通常在所述文本框附近,如在文本框下面。确定展示匹配结果列表的位置区域后,可以在所述位置区域添加一个DOM,用户展示匹配结果列表。采用DOM的结构进行展示,便于后续的文本控制。所述的DOM是Document Object Model(文档对象模型)的缩写,是一种与平台和语言无关的应用程序接口(API),它可以动态地访问程序和脚本,更新其内容、结构和文档的风格。
图4是根据一示例性实施例示出的一种文本框信息处理方法中文本块插入处理的流程图。如图4所示,所述响应账户的选择指令,将所述账户在所述匹配结果列表中选择的匹配结果作为一个整体文本块插入到所述文本框中,包括:
S402:响应所述账户的选择指令,确定从所述匹配结果列表中选择的匹配结果;
S404:将所述选择的匹配结果与预设的附加信息按照预设组合规则进行组合,生成匹配项;
S406:将所述匹配项作为一个整体文本框插入到所述文本框中。
由第一位置和第二位置之间的待匹配内容直接匹配出的匹配结果通常是纯文本的信息内容,携带的信息内容较少。本实施例可以将所述匹配结果与其他信息进行组合,生成包含更多信息内容的匹配项。具体的,可以将用户在匹配结果列表中选择的匹配结果与预设的附加信息按照预设组合规则进行组合,生成匹配项,将所述匹配项作为一个整体文本框插入到所述文本框中。所述预设的附加信息可以根据需要记录的信息进行选择,如可以包括用户的识别标识信息、用户等级信息、用户与预设关键字符所指示的目标对象的好友关系等信息内容。
具体的实现方式示例中,终端的组件(调用方)可以通过设置DOM的attribute(html中的一种调用方法,可以添加自定义的属性)来记录一些附加信息,如userID(用户标识)等。而这些附加可以设置不会出现在页面上的。如果调用方没有使用这个插槽,则可以会使用组件默认的样式和结构。生成好待插入的DOM之后,组件可以将DOM的contenteditable(网页中节点元素的属性,设置这个属性为true,用户就能够编辑对应的节点元素)设为false,这样这个DOM节点里面的内容就会不可编辑,并且删除的时候会把他当做一个整体来删除。最后组件可以调用富文本框的appendChild(html中的一种调用方法)来将这个DOM插入到输入内容中。
本实施例方案在文本框中插入的匹配结果,可以不再是纯文本的信息内容,可以记录更多的附加信息,可以存储更多的数据信息,后续可以通过对插入的匹配结果的解析获取得到这些附件信息,更加有利于开发者后期文本框信息处理的准确性和效率。
本公开提供所述方法的另一些实施例中,所述生成匹配项可以包括:设置所述匹配项中的附加信息在所述文本框中展示时为不可见。如前所述,包含附加的匹配结果容可以在用户正常使用(非开发模式)文本框时不进行显示,以保留原有的交互界面,减少信息干扰,实现了在不影响UI展示的条件下,可以存储更多的数据信息。
图5是根据一示例性实施例示出的一种文本框信息处理方法的流程图。如图5所示,所述方法的另一些实施例中,在所述将所述匹配项作为一个整体文本框插入到所述文本框中之后,包括:
502:修改所述匹配项的文本属性数据和/或为所述匹配项增加预设的动画效果,得到所述匹配项的预设展示样式;
S504:按照预设样式在所述文本框中展示所述匹配项。
所述预设样式具体的可以包括高亮显示、字体加粗、改变字体等。具体的可以通过修改匹配项的文本属性数据实现,如修改底色、文本字体颜色、字体等。也可以包括为所述匹配项设置动态缩放、颜色/透明度周期性渐变等动画效果。这样,通过修改匹配项的文本属性数据或增加动画效果来改变插入的匹配项的展示方式,使得匹配项的预设展示样式明显区别于文本框中默认或当期的展示样式,可以使得用户可以更明显的认知到文本框中插入的匹配项,丰富文本框信息展示内容和展示方式,提升用户界面交互体验。同时在删除之前插入的匹配内容时,也能更加注意到自己即将要删除的信息内容,丰富了文本框交互方式,提高了用户交互体验。
图6是根据一示例性实施例示出的一种文本框信息处理方法的流程图。如图6所示,所述方法的另一些实施例中,在所述响应账户的选择指令,将所述账户在所述匹配结果列表中选择的匹配结果作为一个整体文本块插入到所述文本框中之后,还包括:
S602:遍历所述匹配项中的文本内容,得到文本内容中各个节点对应的解析内容;
S604:根据所述预设组合规则确定拼接顺序,按照所述拼接顺序对所述解析内容进行拼接,得到目标解析内容。
在将匹配项提交到后台之前渲染展示之前可以对富文本进行解析。所述的富文本即上述包含了所述附加信息的匹配项。一些实施例中可以对富文本的所有子节点层次遍历并解析每个节点。在富文本中,输入换行符时,富文本可以将当前行用div(一种文本分割的标签)这个标签来包裹起来。对于调用方插入的特殊节点,调用方解析的时候可以根据自己的实际需求去获取内容。例如上面的DOM,设置了DOM的data-user-id,在解析的时候,可以通过DOM.getAttribute(‘data-user-id’)即可获得DOM所记录的附加信息。最后将所有解析后的内容按顺序拼接起来,可以最后的解析后的目标解析内容。开发人员可以获得记录在匹配项中的附加信息,节省获取这些附加信息的额外资源开销。
可以理解的是,本说明书中上述方法的各个实施例均采用递进的方式描述,各个实施例之间相同/相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。相关之处参见其他方法实施例的描述说明即可。
应该理解的是,虽然附图中涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,附图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的步骤或者阶段的至少一部分轮流或者交替地执行。
基于上述所述的页面中文本框信息处理方法实施例的描述,本公开还提供在页面中文本框信息处理装置。所述装置可以包括使用了本说明书实施例所述方法的系统(包括分布式系统)、软件(应用)、模块、组件、服务器、客户端等并结合必要的实施硬件的装置。基于同一创新构思,本公开实施例提供的一个或多个实施例中的装置如下面的实施例所述。由于装置解决问题的实现方案与方法相似,因此本说明书实施例具体的装置的实施可以参见前述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图7是根据一示例性实施例示出的一种文本框信息处理装置框图。所述装置可以为前述所述终端110,也可以为服务器,或者集成于所述终端110的模块、组件、器件、单元等。
具体的可以参照图7,该装置100可以包括:
检测模块702,可以用于检测文本框中当前光标所处的第一位置和所述文本框中预设关键字符所处的第二位置;
匹配模块704,可以用于当所述第一位置和所述第二位置之间的内容为符合条件的待匹配内容时,对所述待匹配内容进行匹配,得到匹配结果;
匹配结果容展示模块706,可以用于展示包括所述匹配结果的匹配结果列表;
插入模块708,可以用于响应账户的选择指令,将所述账户在所述匹配结果列表中选择的匹配结果作为一个整体文本块插入到所述文本框中。
所述装置的另一些实施例中,所述待匹配内容包括所述预设关键字符所指示的目标对象;
所述匹配结果列表中的匹配结果包括:基于对所述目标对象进行匹配获得的内容。
一示例性实施例如图8所示,图8是根据一示例性实施例示出的一种文本框信息处理装置框图。参照图7,所述装置还可以包括:
删除模块802,可以用于删除所述待匹配内容或在所述第一位置和第二位置之间已经插入的匹配结果。
基于前述方法实施例的描述,所述装置的另一些实施例中,当所述第一位置和所述第二位置之间的内容为符合条件的待匹配内容时,对所述待匹配内容进行匹配,得到匹配结果,包括:
当所述第一位置和所述第二位置之间的内容为不包含空白字符的待匹配内容时,对所述待匹配内容进行匹配,得到匹配结果。
基于前述方法实施例的描述,所述装置的另一些实施例中,所述展示包括所述匹配结果的匹配结果列表包括:
确定展示匹配结果列表的位置区域;
在所述位置区域添加文档对象模型;
基于所述文档对象模型展示包括所述匹配结果的匹配结果列表。
基于前述方法实施例的描述,所述装置的另一些实施例中,所述响应账户的选择指令,将所述账户在所述匹配结果列表中选择的匹配结果作为一个整体文本块插入到所述文本框中,包括:
响应所述账户的选择指令,确定从所述匹配结果列表中选择的匹配结果;
将所述选择的匹配结果与预设的附加信息按照预设组合规则进行组合,生成匹配项;
将所述匹配项作为一个整体文本框插入到所述文本框中。
基于前述方法实施例的描述,所述装置的另一些实施例中,所述生成匹配项包括:
设置所述匹配项中的附加信息在所述文本框中展示时为不可见。
一示例性实施例如图9所示,图9是根据一示例性实施例示出的一种文本框信息处理装置框图。参照图9,所述装置还可以包括:
修改模块902,可以用于修改所述匹配项的文本属性数据和/或为所述匹配项增加预设的动画效果,得到所述匹配项的预设展示样式;
匹配项显示模块904,可以用于按照预设样式在所述文本框中展示所述匹配项。
一示例性实施例如图10所示,图10是根据一示例性实施例示出的一种文本框信息处理装置框图。参照图10,所述装置还可以包括:
遍历模块1002,可以用于遍历所述匹配项中的文本内容,得到文本内容中各个节点对应的解析内容;
拼接模块1004,可以用于根据所述预设组合规则确定拼接顺序,按照所述拼接顺序对所述解析内容进行拼接,得到目标解析内容。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
在示例性实施例中,还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现本说明书中任一项所述的页面中文本框信息处理方法。
图11是根据一示例性实施例示出的一种文本框信息处理设备Z00的框图。所述设备Z00可以是视频或图像风格迁移处理的电子设备。例如,设备Z00可以是移动电话、计算机、数字广播终端、消息收发设备、游戏控制台、平板设备、医疗设备、健身设备、个人数字助理、智能穿戴设备、车载设备等。
参照图10,设备Z00可以包括以下一个或多个组件:处理组件Z02、存储器Z04、电源组件Z06、多媒体组件Z08、音频组件Z10、输入/输出(I/O)的接口Z12、传感器组件Z14以及通信组件Z16。
处理组件Z02通常控制设备Z00的整体操作,诸如与显示、电话呼叫、数据通信、相机操作和记录操作相关联的操作。处理组件Z02可以包括一个或多个处理器Z20来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件Z02可以包括一个或多个模块,便于处理组件Z02和其他组件之间的交互。例如,处理组件Z02可以包括多媒体模块,以方便多媒体组件Z08和处理组件Z02之间的交互。
存储器Z04被配置为存储各种类型的数据以支持在设备Z00的操作。这些数据的示例包括用于在设备Z00上操作的任何应用程序或方法的指令、联系人数据、电话簿数据、消息、图片、视频等。存储器Z04可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(12RAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、磁存储器、快闪存储器、磁盘或光盘。
电源组件Z06为设备Z00的各种组件提供电力。电源组件Z06可以包括电源管理系统,一个或多个电源,及其他与为设备Z00生成、管理和分配电力相关联的组件。
多媒体组件Z08包括在所述设备Z00和对象之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自对象的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件Z08包括前置摄像头和/或后置摄像头。当设备Z00处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件Z10被配置为输出和/或输入音频信号。例如,音频组件Z10包括一个麦克风(MIC),当设备Z00处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器Z04或经由通信组件Z16发送。在一些实施例中,音频组件Z10还包括扬声器,用于输出音频信号。
I/O接口Z12为处理组件Z02和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件Z14包括一个或多个传感器,用于为设备Z00提供各个方面的状态评估。例如,传感器组件Z14可以检测到设备Z00的打开/关闭状态,组件的相对定位,例如所述组件为设备Z00的显示器和小键盘,传感器组件Z14还可以检测设备Z00或设备Z00一个组件的位置改变,对象与设备Z00接触的存在或不存在,设备Z00方位或加速/减速和设备Z00的温度变化。传感器组件Z14可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件Z14还可以包括光传感器,如CMO12或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件Z14还可以包括加速度传感器、陀螺仪传感器、磁传感器、压力传感器或温度传感器。
通信组件Z16被配置为便于设备Z00和其他设备之间有线或无线方式的通信。设备Z00可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件Z16经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件Z16还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,设备Z00可以被一个或多个应用专用集成电路(A12IC)、数字信号处理器(D12P)、数字信号处理设备(D12PD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
需要说明的是,上述设备Z00可以是电子设备的示例性描述,如手机。在一些终端产品中,可以不必包含上述全部组件或某个组件下的全部功能单元。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器Z04,上述指令可由设备Z00的处理器Z20执行以完成上述方法。存储介质可以是计算机可读存储介质,例如,所述计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘、光数据存储设备、石墨烯数据存储设备等。
需要说明的,上述所述的装置、设备、计算机程序等根据方法实施例的描述还可以包括其它的实施方式,具体的实现方式可以参照相关方法实施例的描述。同时各个方法以及装置、设备、服务器实施例之间特征的相互组合组成的新的实施例仍然属于本公开所涵盖的实施范围之内,在此不作一一赘述。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或描述的装置或单元相互之间的耦合、通信连接等可以是直接和/或间接耦合/连接的方式实现,可以是通过一些标准或自定义的接口、协议等,是电性,机械或其它的形式实现。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。