CN107590110A - 文本显示方法及装置 - Google Patents
文本显示方法及装置 Download PDFInfo
- Publication number
- CN107590110A CN107590110A CN201710853596.3A CN201710853596A CN107590110A CN 107590110 A CN107590110 A CN 107590110A CN 201710853596 A CN201710853596 A CN 201710853596A CN 107590110 A CN107590110 A CN 107590110A
- Authority
- CN
- China
- Prior art keywords
- template
- field
- display
- text
- character string
- 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
Links
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种文本显示方法及装置,属于计算机科学领域。所述方法包括:接收针对显示控件输入的模板字符串;分析所述模板字符串中的变量字段对应的第一参数类型,所述变量字段用于指示与显示模板相结合的显示参数的参数类型;根据所述模板字符串生成所述显示模板;当接收到所述第一参数类型对应的所述显示参数时,根据所述显示模板和所述显示参数生成显示文本;在所述显示控件中显示所述显示文本。通过上述方法,当需要更新模板时,管理人员只需要输入模板字符串,即可以自动完成模板的更新和参数的匹配,不需要开发人员人工修改显示控件的代码,从而提高了对显示控件中的模板进行更新的效率。
Description
技术领域
本发明实施例涉及计算机科学领域,特别涉及一种文本显示方法及装置。
背景技术
在如今的信息化时代,在网页或者应用界面中往往需要按照特定的模板显示文本信息。
在相关技术中,若要实现在界面中按照模板显示文本,则需要系统开发人员在开发界面时,在界面中添加用于显示文本的显示控件,并在运行于服务器侧,且对应显示控件的代码中编写固定的模板。客户端显示界面的过程中,服务器获取到待显示的变量字段时,将变量字段与固定模板组合成文本,并将组合获得的文本推送至客户端侧,由客户端在界面的显示控件中渲染并显示该文本。
实际应用中,当有更改显示控件中的模板的需求时,开发人员需要手动修改对应显示控件的代码,以更新显示控件中的模板,而手动修改代码的过程需要消耗较多的时间,影响更新效率。
发明内容
本发明实施例提供了一种文本显示方法及装置,可以用于解决在相关技术中手动修改代码的过程需要消耗较多的时间,影响更新效率的问题。所述技术方案如下:
第一方面,提供了一种文本显示方法,所述方法包括:
接收针对显示控件输入的模板字符串;
分析所述模板字符串中的变量字段对应的第一参数类型,所述变量字段用于指示与显示模板相结合的显示参数的参数类型;
根据所述模板字符串生成所述显示模板;
当接收到所述第一参数类型对应的所述显示参数时,根据所述显示模板和所述显示参数生成显示文本;
在所述显示控件中显示所述显示文本。
可选的,所述分析所述模板字符串中的变量字段对应的第一参数类型,包括:
对所述模板字符串进行格式匹配,确定所述模板字符串中的预定格式符号;
根据第一字段确定所述第一参数类型,所述第一字段是所述模板字符串中与所述预定格式符号相对应的字段;
其中,所述预定格式符号和所述第一字段构成所述变量字段。
可选的,所述根据第一字段确定所述第一参数类型,包括:
将所述第一字段与已经声明为参数类型的各个字段分别进行匹配;
若所述第一字段与所述各个字段中的第三字段匹配,则将所述第三字段对应的参数类型确定为所述第一参数类型;
若所述第一字段与所述各个字段中的任意字段都不匹配,则将所述第一字段声明为所述第一参数类型。
可选的,所述根据所述模板字符串生成所述显示模板,包括:
生成包含所述模板字符串的所述显示模板;
所述当接收到所述第一参数类型对应的所述显示参数时,根据所述显示模板和所述显示参数生成显示文本,包括:
将所述模板字符串中的所述变量字段删除,并在所述变量字段在所述模板字符串中的位置处插入所述显示参数,以获得所述显示文本。
可选的,所述根据所述模板字符串生成所述显示模板,包括:
生成包含第二字段的所述显示模板,所述第二字段是所述模板字符串中除了所述变量字段之外的字段;
所述当接收到所述第一参数类型对应的所述显示参数时,根据所述显示模板和所述显示参数生成显示文本,包括:
当接收到所述第一参数类型对应的所述显示参数时,按照预先设置的组合方式将所述显示参数与所述第二字段进行组合,获得所述显示文本,所述组合方式用于指示所述显示参数与所述第二字段的相对位置。
可选的,所述接收针对显示控件输入的模板字符串,包括:
当接收到对所述显示控件的配置操作时,展示配置界面;
接收在所述配置界面中输入的所述模板字符串。
可选的,所述根据所述模板字符串生成显示模板,包括:
通过new Function方法,根据所述模板字符串生成满足预设语言标准规范的所述显示模板。
第二方面,提供了一种文本显示装置,所述装置包括:
接收模块,用于接收针对显示控件输入的模板字符串;
分析模块,用于分析所述模板字符串中的变量字段对应的第一参数类型,所述变量字段用于指示与显示模版相结合的显示参数的参数类型;
模板生成模块,用于根据所述模板字符串生成所述显示模板;
文本生成模块,用于当接收到所述第一参数类型对应的所述显示参数时,根据所述显示模板和所述显示参数生成显示文本;
显示模块,用于在所述显示控件中显示所述显示文本。
可选的,所述分析模块,包括:
格式匹配单元,用于对所述模板字符串进行格式匹配,确定所述模板字符串中的预定格式符号;
确定单元,用于根据第一字段确定所述第一参数类型,所述第一字段是所述模板字符串中与所述预定格式符号相对应的字段;
其中,所述预定格式符号和所述第一字段构成所述变量字段。
可选的,所述确定单元,具体用于:
将所述第一字段与已经声明为参数类型的各个字段分别进行匹配;
若所述第一字段与所述各个字段中的第三字段匹配,则将所述第三字段对应的参数类型确定为所述第一参数类型;
若所述第一字段与所述各个字段中的任意字段都不匹配,则将所述第一字段声明为所述第一参数类型。
可选的,所述模板生成模块,具体用于:
生成包含所述模板字符串的所述显示模板;
所述文本生成模块,具体用于:
将所述模板字符串中的所述变量字段删除,并在所述变量字段在所述模板字符串中的位置处插入所述显示参数,以获得所述显示文本。
可选的,所述模板生成模块,具体用于:
生成包含第二字段的所述显示模板,所述第二字段是所述模板字符串中除了所述变量字段之外的字段;
所述文本生成模块,具体用于:
当接收到所述第一参数类型对应的所述显示参数时,按照预先设置的组合方式将所述显示参数与所述第二字段进行组合,获得所述显示文本,所述组合方式用于指示所述显示参数与所述第二字段的相对位置。
可选的,所述接收模块,包括:
展示单元,用于当接收到对所述显示控件的配置操作时,展示配置界面;
接收单元,用于接收在所述配置界面中输入的所述模板字符串。
可选的,所述模板生成模块,具体用于:
通过new Function方法,根据所述模板字符串生成满足预设语言标准规范的所述显示模板。
第三方面,提供了一种计算机设备,所述计算机设备包括:处理器、与所述处理器相连的存储器,以及存储在所述存储器上的程序指令,所述处理器,用于执行所述程序指令,以实现如第一方面所述的文本显示方法。
第四方面,提供了一种计算机可读介质,其上存储有程序指令,所述程序指令被处理器执行时实现如第一方面所述的文本显示方法。
本发明实施例提供的技术方案带来的有益效果是:
通过接收输入的模板字符串,分析模板字符串所指示的参数类型,并根据模板字符串自动生成显示模板,当接收到参数类型对应的参数时,根据生成的显示模板和参数生成显示文本并渲染显示,即通过上述方法,当需要更新显示模板时,管理人员只需要输入模板字符串,即可以自动完成显示模板的更新和参数的匹配,不需要开发人员人工修改显示控件的代码,从而提高了对显示控件中的显示模板进行更新的效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1本发明一个实施例提供的文本显示系统的结构图;
图2是本发明的一个示例性实施例示出的一种文本显示方法的流程图;
图3是本发明的一个示例性实施例示出的另一种文本显示方法的流程图;
图4是图3所示实施例涉及模板生成及文本显示方法的流程图;
图5是本发明一个实施例提供的一种文本显示装置的结构方框图;
图6是本发明一个实施例提供的另一种界面显示装置的结构方框图;
图7是本发明一个示例性实施例所涉及的计算机设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
请参考图1,其示出了本发明一个实施例提供的文本显示系统的结构图。如图1所示,该文本显示系统包括若干个用户终端120以及服务器集群140。
用户终端120可以是手机、平板电脑、电子书阅读器、MP3播放器(Moving PictureExperts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(MovingPicture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器或者膝上型便携计算机等移动终端;或者,用户终端120也可以是智能手表、智能手环或者智能眼镜等智能可穿戴设备;或者,用户终端120也可以是台式计算机等固定式计算设备等等。
在本发明实施例中,用户终端120具有网页或应用界面显示功能,比如,用户终端120中可以安装网页客户端或者应用程序客户端,该网页客户端或者应用程序客户端的界面中包含显示控件,该显示控件可以显示服务器140推送的,按照显示模板生成的显示文本。
其中,在本发明实施例中,显示控件是应用程序客户端的界面中包含的,用于显示文本或图案的控件,比如,显示控件可以是界面中的一个文本显示框或者文本显示栏等,显示文本则是在显示控件上进行显示的文本。即显示控件用于显示不同的参数结合固定的显示模版所生成的显示文本。
服务器集群140可以由单台服务器组成,或者,服务器集群140也可以由多台服务器组成,或者服务器集群140也可以是一个云计算服务中心等。
在本发明实施例中,服务器集群140为用户终端120中的网页客户端或者应用程序客户端提供服务支持,比如,向网页客户端或者应用程序客户端提供用于在显示控件中显示的文本。
用户终端120与服务器集群140之间通过通信网络相连。可选的,通信网络是有线网络或无线网络。
可选的,该系统还可以包括管理设备160,该管理设备160与服务器集群140之间通过通信网络相连。可选的,通信网络是有线网络或无线网络。该管理设备160可以是移动终端、智能可穿戴设备或者固定式计算设备等等。
可选的,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网、但也可以是任何网络,包括但不限于局域网(Local Area Network,LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合)。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(Extensible MarkupLanguage,XML)等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全(Trassport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(Internet ProtocolSecurity,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
上述显示模板可以是用于结合输入的显示参数生成显示文本的模板,而显示参数则是用于与固定的显示模版相结合以生成不同的显示文本的参数。本发明实施例所示的方案适用于将变量字段与显示模板进行组合以生成显示文本并进行显示的场景。比如,在某个场景中,用户终端120中显示的应用界面中包含显示控件,且该显示控件用于显示某个抽奖活动的实时中奖信息“xxx抽中大奖”,在该中奖信息中,用户名为变量字段,而字段“抽中大奖”则是固定不变的,服务器集群140中可以预先设置字段为“抽中大奖”的显示模板,不同的用户抽中大奖时,只需要将用户名“xxx”作为变量字段与显示模板进行组合即可以获得显示文本“xxx抽中大奖”。具体比如,在第一时刻,用户小明在抽奖活动中抽中大奖,此时,服务器集群140获取到小明的抽奖信息,确定变量字段为“小明”,则结合显示模板生成显示文本“小明抽中大奖”,并将该显示文本推送至用户终端120,以便用户终端120在显示控件中进行显示;在后续的第二时刻,用户小王在抽奖活动中抽中大奖,此时,服务器集群140获取到小王的抽奖信息,确定变量字段为“小王”,则结合显示模板生成显示文本“小王抽中大奖”,并将该显示文本推送至用户终端120。
在本发明实施例中,一个显示控件对应的显示模板可以由管理人员在线配置,即当存在重新设置一个显示控件显示的文本所对应的显示模板时,管理人员可以在线配置该显示控件对应的显示模板,不需要对服务器侧对应该显示控件的代码进行人工编写和修改。上述在线配置显示控件对应的显示模板的方案可以参见下述各个实施例中的描述。
请参考图2,其示出了本发明的一个示例性实施例示出的一种文本显示方法的流程图,该方法可以应用于服务器中,用于向用户终端推送在网页或者应用界面包含的显示控件中显示的文本。其中,该服务器可以实现为上述图1所示系统包含的服务器集群140。如图2所示,该文本显示方法可以包括:
步骤201,接收针对显示控件输入的模板字符串。
在本发明实施例中,模板字符串是指示待生成的显示模板的字符串,该模板字符串可以由服务器的管理人员按照预定的规则进行编写,如果服务器的管理人员想要配置显示控件对应的新的显示模板,可以针对显示控件输入一个模板字符串,服务器可以接收该模板字符串。
其中,管理人员可以在服务器提供的可视化界面中输入该模板字符串,服务器可以直接获取到管理人员在可视化界面中输入该模板字符串。
或者,管理人员也可以在与服务器相连的管理终端提供的可视化界面中输入该模板字符串,由管理终端将通过可视化界面接收到的模板字符串发送给服务器。
步骤202,分析该模板字符串中的变量字段对应的第一参数类型,该变量字段用于指示与显示模板相结合的显示参数的参数类型。
在本发明实施例中,管理人员输入的模板字符串可以指示要生成的模板所匹配的变量字段的类型,服务器接收到模板字符串之后,可以通过对模板字符串进行分析获得模板匹配的变量字段对应的第一参数类型。
步骤203,根据该模板字符串生成该显示模板。
在本发明实施例中,服务器可以根据管理人员输入的模板字符串生成用于与变量字段进行组合的模板。
步骤204,当接收到该第一参数类型对应的该显示参数时,根据该显示模板和该显示参数生成显示文本。
在本发明实施例中,当服务器接收到上述第一参数类型对应的显示参数时,可以按照预定方式将变量字段与显示模板进行组合,以生成最终的显示文本。
步骤205,在该显示控件中显示该显示文本。
在本发明实施例中,当服务器生成了最终需要显示的显示文本后,就可以将显示文本推送给各个用户终端,由各个用户终端在显示控件中显示该显示文本。
综上所述,本发明实施例提供的方法,通过接收输入的模板字符串,分析模板字符串所指示的参数类型,并根据模板字符串自动生成模板,当接收到参数类型对应的参数时,根据生成的模板和参数生成显示文本并渲染显示,即通过上述方法,当需要更新模板时,管理人员只需要输入模板字符串,即可以自动完成模板的更新和参数的匹配,不需要开发人员人工修改显示控件的代码,从而提高了对显示控件中的模板进行更新的效率。
请参考图3,其示出了本发明的一个示例性实施例示出的另一种文本显示方法的流程图,该方法可以应用于服务器中,用于向用户终端推送在网页或者应用界面包含的显示控件中显示的文本。其中,该服务器可以实现为上述图1所示系统包含的服务器集群140。如图3所示,该文本显示方法可以包括:
步骤301,当接收到对显示控件的配置操作时,展示配置界面。
在本发明实施例中,如果管理人员想要针对显示控件配置新的显示模板,则可以在服务器提供的可视化界面或者与服务器相连的管理终端的可视化界面中发出针对显示控件的操作指令,服务器检测到配置操作后,通过上述可视化界面展示一个对显示控件进行配置的配置界面。
步骤302,接收在该配置界面中输入的模板字符串。
其中,上述配置界面可以包含至少一个输入框,管理人员可以在该至少一个输入框中输入至少一个模板字符串。具体比如,上述配置界面中可以只包含一个输入框,只允许用户一次输入一个模板字符串;或者,上述配置界面中可以只包含一个输入框,且该输入框允许用户一次输入至少一个模板字符串;或者,上述配置界面中也可以包含多个输入框,且每个输入框可以允许用户一次输入至少一个模板字符串等等。
管理人员在配置界面中输入模板字符串,并执行确认操作(比如点击确定按钮)后,服务器会接收输入的该模板字符串。
步骤303,对该模板字符串进行格式匹配,确定该模板字符串中的预定格式符号。
在本发明实施例中,服务器可以通过格式匹配的方式对模板字符串进行分析。具体的,当服务器接收到管理人员针对显示控件输入的模板字符串后,先对该模板字符串进行格式匹配,以确定该模板字符串中的预定格式符号。
比如,假设管理人员输入的模板字符串是“恭喜${name}获得大奖”,其中预定格式符号是“${”和“}”,当服务器接收到该模板字符串时,按照预定格式符号对该模板字符串进行格式匹配,找出该模板字符串中的预定格式符号。
其中,服务器可以通过正则表达式的方式对模板字符串进行格式匹配,以确定该模板字符串中的预定格式符号。
步骤304,根据第一字段确定第一参数类型,该第一字段是该模板字符串中与该预定格式符号相对应的字段。
其中,该预定格式符号和该第一字段构成该变量字段。
在本发明实施例中,服务器确定出接收到的模板字符串中的预定格式符号之后,会接着确定出该模板字符串中与该预定格式符号相对应的字段,即第一字段,与该预定格式符号相对应的字段可以是在该预定格式符号之间的字段,也可以是在该预定格式符号之后的字段,比如,服务器接收到的模板字符串是“恭喜${name}获得大奖”,预定格式符号是“${”和“}”,预先设置第一字段为在该预定格式符号之间的字段,那么第一字段就是“name”,该预定格式符号和该第一字段构成该变量字段“${name}”。
变量字段作为生成显示文本的输入参数之一,其可以有多种类型,比如,姓名、年龄、性别等等。而一条显示文本中可能包含两个或者两个以上不同类型的变量字段,比如,某个显示文本为“恭喜小王获得18岁生日礼物”,其中“小王”和“18”为变量字段,且变量字段“小王”的参数类型为name(姓名),而变量字段“18”的参数类型为age(年龄)。在实际应用中,服务器在根据变量字段和模板生成显示文本时,尤其是一条显示文本中包含两条或者两条以上不同类型的变量字段时,往往需要将不同类型的变量字段组合在模板中的不同位置。在本发明实施例中,为了便于后续生成显示文本,服务器可以对模板字符串中的变量字段的参数类型进行声明,以确定根据模板字符串生成的模板适配哪种或者哪些参数类型的变量字段。
在一种可能的实现方式中,服务器可以直接对上述第一字段进行声明,将第一字段声明为变量字段对应的第一参数类型。比如,上述模板字符串中的第一字段为“name”,则服务器可以将该模板字符串对应的变量字段的参数类型声明为name。
在另一种可能的实现方式中,服务器可以将第一字段与已经声明为参数类型的各个字段分别进行匹配,该第一字段是该模板字符串中与该预定格式符号相对应的字段;若该第一字段与该各个字段中的第三字段匹配,则将该第三字段对应的参数类型确定为第一参数类型;若该第一字段与该各个字段中的任意字段都不匹配,则将该第一字段声明为第一参数类型。
在实际应用中,变量字段的参数类型的种类有限,管理人员在输入模板字符串时,该模板字符串对应的变量字段的参数类型可能已经被声明过,为了避免重复声明,在本发明实施例中,服务器确定出该第一字段后,可以将第一字段与已经声明为参数类型的各个字段分别进行匹配,具体的,服务器可以将该第一字段存放在一个数组中,然后将数组中的第一字段与服务器中存储的已经声明为参数类型的各个字段分别进行匹配对比。
若匹配结果为该第一字段与该各个字段中的第三字段匹配,即后端服务器中存储的已经声明为参数类型的字段中包含服务器确定的第一字段,则表示该第一字段已经被声明为参数类型,这时需要把该参数类型确定为第一参数类型。若匹配结果为该第一字段与该各个字段中的任意字段都不匹配,即后端服务器中存储的已经声明过为参数类型的字段中不包含服务器确定的第一字段,则表示该第一字段还未被声明为参数类型,需要对该第一字段进行声明,将其声明为第一参数类型。
比如,假设服务器中以及声明过的参数类型为name和age,则假设从上述模板字符串中确定的第一字段为name,服务器匹配确定该第一字段与声明过的参数类型name一致,则不需要对该模板字符串对应的变量字段的参数类型进行声明;若从上述模板字符串中确定的第一字段为sex(性别),则服务器匹配确定该第一字段与声明过的参数类型都不一致,则对上述模板字符串中的第一字段sex进行声明,即声明为第一参数类型。
在执行步骤304之后,可以执行步骤305和步骤306,或者,也可以执行步骤307和步骤308。
步骤305,通过new Function方法,根据该模板字符串生成包含该模板字符串的显示模板。
在本发明实施例中,服务器将模板字符串中的第一字段声明为第一参数类型之后,可以通过new Function方法,根据该模板字符串生成满足预设语言标准规范,比如ES6(European Computer Manufacturers Association Script 6,欧洲计算机制造商协会脚本第6版)的显示模板,该显示模板可以直接包含该模板字符串。具体来说,在编辑代码时,可以将该模板字符串中所有已经声明为第一参数类型的变量字段设为new Function方法的参数,通过new Function方法会生成一个函数,该函数就包含所需的显示模板,当执行该函数时,服务器就会按照该函数包含的显示模板执行后续步骤。
步骤306,当接收到该第一参数类型对应的显示参数时,将该模板字符串中的该变量字段删除,并在该变量字段在该模板字符串中的位置处插入该显示参数,以获得显示文本。
在本发明实施例中,在服务器通过new Function方法,生成包含模板字符串的显示模板之后,当接收到第一参数类型对应的显示参数时,需要将模板字符串中的变量字段替换为该显示参数,具体来说,在该显示模板中,将模板字符串中的变量字段删除,并在该变量字段的位置插入该显示参数,这样就生成了最终要显示的显示文本。比如,模板字符串为“恭喜${name}获得大奖”,服务器通过new Function方法生成了包含该模板字符串的显示模板“恭喜${name}获得大奖”,接收到的第一参数类型对应的显示参数为“小明”,则在显示模板中,将模板字符串中的变量字段“${name}”删除,再在“恭喜”和“获得大奖”之间插入显示参数“小明”,得到显示文本“恭喜小明获得大奖”。
步骤307,通过new Function方法,根据该模板字符串生成包含第二字段的该显示模板,该第二字段是该模板字符串中除了该变量字段之外的字段。
比如,假设上述模板字符串为“${name}获得大奖”,其中${name}为第一字段,则其余部分“获得大奖”即为第二字段,服务器可以通过new Function方法,生成包含“获得大奖”的显示模板。
步骤308,当接收到该第一参数类型对应的显示参数时,按照预先设置的组合方式将该显示参数与该第二字段进行组合,获得该显示文本,该组合方式用于指示该显示参数与该第二字段的相对位置。
在本发明实施例中,还可以由代码开发人员自行为显示参数和显示模板设置组合方式,而不按照管理人员输入的模板字符串的格式来生成显示文本。具体来说,在服务器通过new Function方法生成显示模板的时候,除了将该模板字符串中所有已经声明为第一参数类型的变量字段设为new Function方法的参数,还可以将预先设置的组合方式也设为new Function方法的参数,这样通过new Function方法生成的函数返回的显示模板就包含了预先设置的组合方式。其中,该组合方式可以由开发人员预先设置,或者,也可以由服务器的管理人员通过设置界面进行设置。
当服务器接收到第一显示参数对应的显示参数时,按照预先设置的组合方式将该显示参数与该模板字符串中除了该变量字段之外的固定字段进行组合,获得显示文本。比如,代码开发人员在开发代码时,可以通过combine方法设置组合方式,组合方式为将显示参数拼接在模板字符串中固定字段的前面,模板字符串为“${name}获得大奖”,接收到的第一参数类型对应的显示参数为“小明”,则按照预先设置的组合方式,将显示参数“小明”拼接在固定字段的前面,获得显示文本“小明获得大奖”。
步骤309,在该显示控件中显示该显示文本。
在本发明实施例中,当服务器生成了显示文本之后,就可以向各个用户终端推送生成的显示文本,以便用户终端在当前界面包含的显示控件中显示该显示文本了。
具体的,以管理人员在服务器中设置显示文本为“学生+姓名+的年龄为+数字”的显示模板为例,请参见图4,其示出了本发明实施例涉及模板生成及文本显示方法的流程图。如图4所示,该方法可以包括如下步骤:
步骤41,服务器接收输入的模板字符串“学生${name}的年龄为${age}”。
假设某应用程序中的一个显示控件A用于显示学生的基本信息,在某个时刻,当管理人员需要将显示控件A中显示的信息的格式设置为“学生+姓名+的年龄为+数字”时,可以在服务器中对应该显示控件A的配置界面中输入“学生${name}的年龄为${age}”的模板字符串,点击确认后,服务器接收到该模板字符串。
步骤42,服务器提取该模板字符串中的第一字段“name”和“age”至指定数组。
其中,预定格式符号为“${”和“}”,第一字段为预定格式符号之间的字段,服务器接收到上述模板字符串后,确定该模板字符串中的第一字段“name”和“age”,并将它们提取到指定数组中,这些第一字段与预定格式符号构成变量字段“${name}”和“${age}”。
步骤43,服务器将指定数组中的第一字段与已经声明为参数类型的各个字段分别进行匹配,将指定数组中没有被声明过的第一字段声明为第一参数类型。
服务器将数组中的第一字段与后端服务器中存储的已经声明为参数类型的各个字段进行匹配,筛选出没有被声明的第一字段,然后对该第一字段进行声明。比如,后端服务器中存储的已经声明为参数类型的字段为“name”,那么没有被声明的第一字段即为“age”,服务器就会对“age”进行声明,将其声明为某一参数类型。
步骤44,通过new Function方法,生成显示模板。
在本发明实施例中,可以通过new Function方法,将已经声明过的第一字段设为new Function方法的参数,生成与上述模板字符串对应的显示模板,该显示模板中包含上述模板字符串中的固定字段。
其中,生成的显示模板中可以直接包含上述模板字符串“学生${name}的年龄为${age}”。或者,上述生成的显示模板中也可以包含上述模板字符串中的第二字段“学生”以及“的年龄为”,并且,对应该模板字符串还设置有对应的combine方法(即上述组合方式),该combine方法指示将参数类型为“name”的变量字段设置在“学生”与“的年龄为”之间,并将参数类型为“age”的变量字段设置在“的年龄为”之后。
步骤45,接收到参数类型为“name”的变量字段“小明”以及参数类型为“age”的变量字段“18”时,将变量字段与显示模版进行组合,生成显示文本“学生小明的年龄为18”。
在本发明实施例中,当显示模板中直接包含上述模板字符串“学生${name}的年龄为${age}”时,服务器可以将显示模板中的“${name}”替换为变量字段“小明”,并将显示模板中的“${age}”替换为变量字段“18”,获得显示文本“学生小明的年龄为18”。
或者,当显示模版中包含第二字段“学生”以及“的年龄为”,并且,对应该模板字符串还设置有对应的combine方法时,服务器根据该combine方法,将变量字段“小明”设置在“学生”与“的年龄为”之间,并将变量字段“18”设置在“的年龄为”之后,获得显示文本“学生小明的年龄为18”。
步骤46,在显示控件中显示“学生小明的年龄为18”。
服务器将在生成显示文本之后,将显示文本推送给用户终端,由用户终端在显示控件A中显示该显示文本“学生小明的年龄为18”。
综上所述,本发明实施例提供的方法,服务器可以接收管理人员在配置界面中针对显示控件输入的模板字符串,然后分析确定该模板字符串中的预定格式符号对应的第一字段,对没有声明过的第一字段进行声明,再通过new Function方法生成显示模板,当接收到第一参数类型对应的显示参数时,将模板字符串中的变量字段替换为该显示参数,或者,按照预设的组合方式将变量字段与模板组合成显示文本,最后将显示文本推送给用户终端侧的显示控件进行显示。通过上述方法,当管理人员需要更改模板字符串时,只需针对显示控件输入新的模板字符串,服务器即可以自动完成模板的更新和参数的匹配,不需要开发人员人工修改显示控件的代码,从而提高了对显示控件中的模板进行更新的效率。
下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
请参考图5,其是本发明一个实施例提供的一种文本显示装置的结构方框图,该文本显示装置可通过软件、硬件或者两者的结合实现成为服务器的部分或者全部。该服务器可以实现为上述图1所示系统包含的服务器集群140。该文本显示装置可以包括:
接收模块501,用于接收针对显示控件输入的模板字符串;
分析模块502,用于分析所述模板字符串中的变量字段对应的第一参数类型,所述变量字段用于指示与显示模板相结合的显示参数的参数类型;
模板生成模块503,用于根据所述模板字符串生成所述显示模板;
文本生成模块504,用于当接收到所述第一参数类型对应的所述显示参数时,根据所述显示模板和所述显示参数生成显示文本;
显示模块505,用于在所述显示控件中显示所述显示文本。
进一步的,请参考图6,其示出了本发明一个实施例提供的另一种界面显示装置的结构方框图。
可选的,所述分析模块502,包括:
格式匹配单元502a,用于对所述模板字符串进行格式匹配,确定所述模板字符串中的预定格式符号;
确定单元502b,用于根据第一字段确定所述第一参数类型,所述第一字段是所述模板字符串中与所述预定格式符号相对应的字段;
其中,所述预定格式符号和所述第一字段构成所述变量字段。
可选的,所述确定单元502b,具体用于:
将所述第一字段与已经声明为参数类型的各个字段分别进行匹配;
若所述第一字段与所述各个字段中的第三字段匹配,则将所述第三字段对应的参数类型确定为所述第一参数类型;
若所述第一字段与所述各个字段中的任意字段都不匹配,则将所述第一字段声明为所述第一参数类型。
可选的,所述模板生成模块503,具体用于:
生成包含所述模板字符串的所述显示模板;
所述文本生成模块504,具体用于:
将所述模板字符串中的所述变量字段删除,并在所述变量字段在所述模板字符串中的位置处插入所述显示参数,以获得所述显示文本。
可选的,所述模板生成模块503,具体用于:
生成包含第二字段的所述显示模板,所述第二字段是所述模板字符串中除了所述变量字段之外的字段;
所述文本生成模块504,具体用于:
当接收到所述第一参数类型对应的所述显示参数时,按照预先设置的组合方式将所述显示参数与所述第二字段进行组合,获得所述显示文本,所述组合方式用于指示所述显示参数与所述第二字段的相对位置。
可选的,所述接收模块501,包括:
展示单元501a,用于当接收到对所述显示控件的配置操作时,展示配置界面;
接收单元502b,用于接收在所述配置界面中输入的所述模板字符串。
可选的,所述模板生成模块503,具体用于:
通过new Function方法,根据所述模板字符串生成标准语言标准规范的所述显示模板。
相关细节参见上述方法实施例。
图7示出了本发明一个示例性实施例所涉及的计算机设备700的结构示意图。所述计算机设备可以实现为图1所示的系统中的服务器集群140。请参考图7,计算机设备700包括处理组件722,其进一步包括一个或多个处理器,以及由存储器732所代表的存储器资源,用于存储可由处理部件722执行的指令,例如应用程序。存储器732中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件722被配置为执行指令,以执行上述方法实施例中的文本显示方法。
计算机设备700还可以包括一个电源组件726被配置为执行计算机设备700的电源管理,一个有线或无线网络接口750被配置为将计算机设备700连接到网络,和一个输入输出(I/O)接口758。计算机设备700可以操作基于存储在存储器732的操作系统,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
在本发明实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由计算机设备(比如服务器)的处理器执行以完成上述方法实施例中的各个步骤。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种文本显示方法,其特征在于,所述方法包括:
接收针对显示控件输入的模板字符串;
分析所述模板字符串中的变量字段对应的第一参数类型,所述变量字段用于指示与显示模板相结合的显示参数的参数类型;
根据所述模板字符串生成所述显示模板;
当接收到所述第一参数类型对应的所述显示参数时,根据所述显示模板和所述显示参数生成显示文本;
在所述显示控件中显示所述显示文本。
2.根据权利要求1所述的方法,其特征在于,所述分析所述模板字符串中的变量字段对应的第一参数类型,包括:
对所述模板字符串进行格式匹配,确定所述模板字符串中的预定格式符号;
根据第一字段确定所述第一参数类型,所述第一字段是所述模板字符串中与所述预定格式符号相对应的字段;
其中,所述预定格式符号和所述第一字段构成所述变量字段。
3.根据权利要求2所述的方法,其特征在于,所述根据第一字段确定所述第一参数类型,包括:
将所述第一字段与已经声明为参数类型的各个字段分别进行匹配;
若所述第一字段与所述各个字段中的第三字段匹配,则将所述第三字段对应的参数类型确定为所述第一参数类型;
若所述第一字段与所述各个字段中的任意字段都不匹配,则将所述第一字段声明为所述第一参数类型。
4.根据权利要求1所述的方法,其特征在于,所述根据所述模板字符串生成所述显示模板,包括:
生成包含所述模板字符串的所述显示模板;
所述当接收到所述第一参数类型对应的所述显示参数时,根据所述显示模板和所述显示参数生成显示文本,包括:
将所述模板字符串中的所述变量字段删除,并在所述变量字段在所述模板字符串中的位置处插入所述显示参数,以获得所述显示文本。
5.根据权利要求1所述的方法,其特征在于,所述根据所述模板字符串生成所述显示模板,包括:
生成包含第二字段的所述显示模板,所述第二字段是所述模板字符串中除了所述变量字段之外的字段;
所述当接收到所述第一参数类型对应的所述显示参数时,根据所述显示模板和所述显示参数生成显示文本,包括:
当接收到所述第一参数类型对应的所述显示参数时,按照预先设置的组合方式将所述显示参数与所述第二字段进行组合,获得所述显示文本,所述组合方式用于指示所述显示参数与所述第二字段的相对位置。
6.根据权利要求1所述的方法,其特征在于,所述接收针对显示控件输入的模板字符串,包括:
当接收到对所述显示控件的配置操作时,展示配置界面;
接收在所述配置界面中输入的所述模板字符串。
7.根据权利要求1至6任一所述的方法,其特征在于,所述根据所述模板字符串生成显示模板,包括:
通过new Function方法,根据所述模板字符串生成满足预设语言标准规范的所述显示模板。
8.一种文本显示装置,其特征在于,所述装置包括:
接收模块,用于接收针对显示控件输入的模板字符串;
分析模块,用于分析所述模板字符串中的变量字段对应的第一参数类型,所述变量字段用于指示与显示模版相结合的显示参数的参数类型;
模板生成模块,用于根据所述模板字符串生成所述显示模板;
文本生成模块,用于当接收到所述第一参数类型对应的所述显示参数时,根据所述显示模板和所述显示参数生成显示文本;
显示模块,用于在所述显示控件中显示所述显示文本。
9.一种计算机设备,其特征在于,所述计算机设备包括:处理器、与所述处理器相连的存储器,以及存储在所述存储器上的程序指令,所述处理器,用于执行所述程序指令,以实现如权利要求1至7任一所述的文本显示方法。
10.一种计算机可读介质,其上存储有程序指令,其特征在于,所述程序指令被处理器执行时实现如权利要求1至7任一所述的文本显示方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710853596.3A CN107590110B (zh) | 2017-09-20 | 2017-09-20 | 文本显示方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710853596.3A CN107590110B (zh) | 2017-09-20 | 2017-09-20 | 文本显示方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107590110A true CN107590110A (zh) | 2018-01-16 |
CN107590110B CN107590110B (zh) | 2021-09-28 |
Family
ID=61047393
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710853596.3A Active CN107590110B (zh) | 2017-09-20 | 2017-09-20 | 文本显示方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107590110B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109947512A (zh) * | 2019-03-18 | 2019-06-28 | 北京字节跳动网络技术有限公司 | 一种文本适配显示方法、装置、服务器及存储介质 |
CN111078219A (zh) * | 2019-12-13 | 2020-04-28 | 北京金山云网络技术有限公司 | 页面显示方法、装置、系统、电子设备及存储介质 |
CN111507082A (zh) * | 2020-04-23 | 2020-08-07 | 北京奇艺世纪科技有限公司 | 文本处理方法和装置、存储介质和电子装置 |
CN111857906A (zh) * | 2020-06-03 | 2020-10-30 | 北京旷视科技有限公司 | 终端的文本显示方法、装置、系统和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120102386A1 (en) * | 2010-10-20 | 2012-04-26 | Microsoft Corporation | Customization of Display Templates |
US20120290620A1 (en) * | 2011-05-11 | 2012-11-15 | Mark Zhenguo Guan | Query Template Definition and Transformation |
CN106528006A (zh) * | 2015-09-10 | 2017-03-22 | 阿里巴巴集团控股有限公司 | 一种页面打印方法及装置 |
CN106598931A (zh) * | 2016-12-29 | 2017-04-26 | 江西博瑞彤芸科技有限公司 | 信息模板的生成方法 |
-
2017
- 2017-09-20 CN CN201710853596.3A patent/CN107590110B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120102386A1 (en) * | 2010-10-20 | 2012-04-26 | Microsoft Corporation | Customization of Display Templates |
US20120290620A1 (en) * | 2011-05-11 | 2012-11-15 | Mark Zhenguo Guan | Query Template Definition and Transformation |
CN106528006A (zh) * | 2015-09-10 | 2017-03-22 | 阿里巴巴集团控股有限公司 | 一种页面打印方法及装置 |
CN106598931A (zh) * | 2016-12-29 | 2017-04-26 | 江西博瑞彤芸科技有限公司 | 信息模板的生成方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109947512A (zh) * | 2019-03-18 | 2019-06-28 | 北京字节跳动网络技术有限公司 | 一种文本适配显示方法、装置、服务器及存储介质 |
CN109947512B (zh) * | 2019-03-18 | 2020-06-05 | 北京字节跳动网络技术有限公司 | 一种文本适配显示方法、装置、服务器及存储介质 |
CN111078219A (zh) * | 2019-12-13 | 2020-04-28 | 北京金山云网络技术有限公司 | 页面显示方法、装置、系统、电子设备及存储介质 |
CN111078219B (zh) * | 2019-12-13 | 2023-10-03 | 北京金山云网络技术有限公司 | 页面显示方法、装置、系统、电子设备及存储介质 |
CN111507082A (zh) * | 2020-04-23 | 2020-08-07 | 北京奇艺世纪科技有限公司 | 文本处理方法和装置、存储介质和电子装置 |
CN111857906A (zh) * | 2020-06-03 | 2020-10-30 | 北京旷视科技有限公司 | 终端的文本显示方法、装置、系统和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107590110B (zh) | 2021-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107590110A (zh) | 文本显示方法及装置 | |
JP7104683B2 (ja) | 情報を生成する方法および装置 | |
CN109189544B (zh) | 用于生成表盘的方法和装置 | |
CN107679039A (zh) | 用于确定语句意图的方法和装置 | |
CN109190124B (zh) | 用于分词的方法和装置 | |
CN107241260A (zh) | 基于人工智能的新闻推送的方法和装置 | |
CN109981787B (zh) | 用于展示信息的方法和装置 | |
CN110275963A (zh) | 用于输出信息的方法和装置 | |
WO2021203919A1 (zh) | 用于评估联合训练模型的方法和装置 | |
CN110534085B (zh) | 用于生成信息的方法和装置 | |
CN107861954A (zh) | 基于人工智能的信息输出方法和装置 | |
CN107295607A (zh) | 用于连接无线接入点的方法和设备 | |
CN106873800A (zh) | 信息输出方法和装置 | |
US11120198B2 (en) | Method and system for generating and submitting a petition | |
US20200320686A1 (en) | Method and apparatus for processing fundus image | |
CN109902251A (zh) | 基于决策树的方案选择方法、装置、终端及可读存储介质 | |
CN110321544A (zh) | 用于生成信息的方法和装置 | |
CN111539903A (zh) | 训练人脸图像合成模型的方法和装置 | |
CN111798118B (zh) | 企业经营风险监控方法及装置 | |
CN107153599A (zh) | 一种记录以及回放用户操作的方法及设备 | |
CN110780874A (zh) | 用于生成信息的方法和装置 | |
CN110457505A (zh) | 基于图数据库进行关系挖掘的方法和装置 | |
US20160323443A1 (en) | Dynamic visualization of big data | |
CN108319542A (zh) | 信息处理方法、装置及系统 | |
CN108154916A (zh) | 用于离线执行护理服务的方法、装置、介质及电子设备 |
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 |