CN108287885B - 文本查询方法、装置及电子设备 - Google Patents

文本查询方法、装置及电子设备 Download PDF

Info

Publication number
CN108287885B
CN108287885B CN201810034424.8A CN201810034424A CN108287885B CN 108287885 B CN108287885 B CN 108287885B CN 201810034424 A CN201810034424 A CN 201810034424A CN 108287885 B CN108287885 B CN 108287885B
Authority
CN
China
Prior art keywords
array
application program
search
query statement
queue
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.)
Active
Application number
CN201810034424.8A
Other languages
English (en)
Other versions
CN108287885A (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 Shunyu Zhongbo Enterprise Service Co.,Ltd.
Original Assignee
Wuhan Douyu Network 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 Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201810034424.8A priority Critical patent/CN108287885B/zh
Publication of CN108287885A publication Critical patent/CN108287885A/zh
Application granted granted Critical
Publication of CN108287885B publication Critical patent/CN108287885B/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/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • 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/33Querying
    • G06F16/332Query formulation
    • 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/33Querying
    • G06F16/338Presentation of query results

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请一种文本查询方法、装置及电子设备,电子设备安装有应用程序,应用程序中植入有预设的检索模块,所述方法包括:通过检索模块在应用程序中提供一个搜索界面,并在搜索界面显示一搜索框及搜索按钮;在检测到搜索按钮被点击时,获取用户在搜索框中输入的查询语句;在该电子设备的全局队列中异步调用NSPredicate方法,从应用程序预设的第一数组中获得与查询语句相关的元素得到第二数组,其中,第一数组中的元素为字符串;在应用程序的主队列中执行异步操作,将第二数组中的元素显示于搜索界面。如此,可以直接在应用程序中查询该应用程序内部文件中的文本内容,提高了查询的即时性,提高了应用程序的开发测试效率。

Description

文本查询方法、装置及电子设备
技术领域
本申请涉及移动终端应用程序开发测试技术领域,具体而言,涉及一种文本查询方法、装置及电子设备。
背景技术
随着移动终端的快速发展,移动终端上应用程序迭代更新的速度也越来越快,对应用程序开发效率的要求也越来越高。在应用程序开发测试中,开发者常需要从程序文件中查找某些内容进行展示,例如,系统标识或系统C++信息等。现有技术的方案中,需要在应用程序内部文件中进行文本字符查询时,需要将应用程序的文件从移动终端下载下来,然后再通过其他软件或者工具进行查询搜索。这种查询方式即时性不好,并且查询过程耗时较多,严重影响了应用程序开发测试的效率。
发明内容
为了克服现有技术中的上述不足,本申请的目的在于提供一种文本查询方法,应用于电子设备,所述电子设备安装有应用程序,所述应用程序中植入有预设的检索模块,所述方法包括:
通过所述检索模块在所述应用程序中提供一个搜索界面,并在所述搜索界面显示一搜索框及搜索按钮;
在检测到所述搜索按钮被点击时,获取用户在所述搜索框中输入的查询语句;
在该电子设备的全局队列中异步调用NSPredicate方法,从所述应用程序预设的第一数组中获得与所述查询语句相关的元素得到第二数组,其中,所述第一数组中的元素为字符串;
在所述应用程序的主队列中执行异步操作,将所述第二数组中的元素显示于所述搜索界面。
可选地,在上述方法中,所述在所述应用程序的主队列中执行异步操作,将所述第二数组中的元素显示与所述搜索界面的步骤,包括:
在所述应用程序的主队列中执行异步操作,检测当前所述搜索框中的字符串与所述查询语句是否相同;
若当前所述搜索框中的字符串与所述查询语句相同,则将所述第二数组中的元素显示于所述搜索界面。
可选地,在上述方法中,所述从预设第一数组中获得与所述查询语句相关的元素得到第二数组的步骤,包括:
针对所述第一数组中的每个元素,调用rangeOfString函数判断该元素中的字符串是否包含所述查询语句;
若该元素中的字符串包含所述查询语句,则将该元素的字符串存入所述第二数组中;
若该元素中的字符串不包含所述查询语句,则舍弃该元素。
可选地,在上述方法中,所述在所述应用程序中提供一个搜索界面,在所述搜索界面显示一搜索框及搜索按钮的步骤,包括:
通过tableView控件显示一搜索界面,并通过UISearchController控件在所述搜索界面显示一搜索框及搜索按钮。
本申请的另一目的在于提供一种文本查询装置,应用于电子设备,所述电子设备安装有应用程序,所述应用程序中植入有所述文本查询装置,所述装置包括:
第一显示模块,用于通过所述检索模块在所述应用程序中提供一个搜索界面,在所述搜索界面显示一搜索框及搜索按钮;
获取模块,用于在检测到所述搜索按钮被点击时,获取用户在所述搜索框中输入的查询语句;
查询模块,用于在该电子设备的全局队列中异步调用NSPredicate方法,从预设第一数组中获得与所述查询语句相关的元素得到第二数组,其中,所述第一数组中的元素为字符串;
第二显示模块,用于在所述应用程序的主队列中执行异步操作,将所述第二数组中的元素显示于所述搜索界面。
可选地,在上述装置中,所述第二显示模块在所述应用程序的主队列中执行异步操作,检测当前所述搜索框中的字符串与所述查询语句是否相同;
若当前所述搜索框中的字符串与所述查询语句相同,则将所述第二数组中的元素显示与所述搜索界面。
可选地,在上述装置中,所述查询模块在从预设第一数组中获得与所述查询语句相关的元素得到第二数组时,
针对所述第一数组中的每个元素,调用rangeOfString函数判断该元素中的字符串是否包含所述查询语句;
若该元素中的字符串包含所述查询语句,则将该元素的字符串存入所述第二数组中;
若该元素中的字符串不包含所述查询语句,则舍弃该元素。
可选地,在上述装置中,所述第一显示模块通过tableView控件显示一搜索界面,并通过UISearchController控件在所述搜索界面显示一搜索框及搜索按钮。
本申请的另一目的在于提供一种电子设备,包括处理器及和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,处理器执行所述机器可执行指令以实现本申请提供的文本查询方法。
本申请的另一目的在于提供一种机器可读存储介质,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现本申请提供的文本查询方法。
相对于现有技术而言,本申请具有以下有益效果:
本申请提供的文本查询方法、装置及电子设备,通过在电子设备的应用程序中植入预设的检索模块,在应用程序中显示一个搜索界面。接收用户在该搜索界面输入的查询语句,并通过调用NSPredicate方法查询与所述查询语句相关的文本内容进行显示。如此,可以直接在应用程序中查询该应用程序内部文件中的文本内容,提高了查询的即时性,提高了应用程序的开发测试效率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的电子设备的方框示意图;
图2为本申请实施例提供的文本查询方法的步骤流程示意图;
图3为步骤S140的子步骤流程示意图;
图4为本申请实施例提供的文本查询装置的示意图。
图标:100-电子设备;110-文本查询装置;111-第一显示模块;112-获取模块;113-查询模块;114-第二显示模块;120-存储器;130-处理器。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本申请的描述中,需要说明的是,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
本实施例提供一种电子设备,所述电子设备可以是,但不限于,智能手机、个人电脑(personal computer,PC)、平板电脑、个人数字助理(personal digital assistant,PDA)、移动上网设备(mobile Internet device,MID)等。在本实施例中,所述电子设备的操作系统为iOS系统。
请参照图1,图1为所述电子设备100的方框示意图,包括文本查询装置110、存储器120及处理器130。
所述存储器120及处理器130相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,所述存储器120及处理器130相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述文本查询装置110包括至少一个可以软件或固件(firmware)的形式存储于所述存储器120中或固化在所述电子设备100的操作系统(operating system,OS)中的软件功能模块。所述处理器130用于执行所述存储器120中存储的可执行模块,例如所述文本查询装置110所包括的软件功能模块及计算机程序等。
其中,所述存储器120可以是,但不限于,随机存取存储器(Random AccessMemory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(ProgrammableRead-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-OnlyMemory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-OnlyMemory,EEPROM)等。其中,存储器120用于存储程序,所述处理器130在接收到执行指令后,执行所述程序。
所述处理器130可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
请参照图2,图2为应用于图1所示的电子设备100的一种应用信息获取方法的流程图,其中,所述电子设备100安装有应用程序,并预先植入有预设的检索模块。以下将对所述方法包括各个步骤进行详细阐述。
步骤S110,通过所述检索模块在所述应用程序中提供一个搜索界面,并在所述搜索界面显示一搜索框及搜索按钮。
在本实施例中,首先,预先在所述应用程序中植入预设的检索模块,所述检索模块用于作为文本内容展示容器,在所述检索模块内设置一个文件浏览的功能,以将需要的文本内容显示到当前的控制器中。在所述检索模块中定义一个列表控制器,所述列表控制器通过tableView控件实现,将tableView添加到所述检索模块中,通过registerClass函数设置tableVIew的显示样式,同时设置tableView的数据源方法和代理方法。
然后,通过UISearchController控件定义一个搜索控制器的属性,这个属性是strong类型的,将这个属性名字设置为searchController。
在所述检索模块的初始化方法里面使用UISearchController控件的alloc函数创建一个搜索控制器,同时需要调用initWithSearchResultsController函数开进行初始化。其中,initWithSearchResultsController函数需要一个参数,在本实施例还中不需要填写初始化的方法,所以传入一个nil值。将所述搜索控制器的代理设置为self,以指代当前的所述检索模块。通过属性dimsBackgroundDuringPresentation函数设置在搜索的时候触摸搜索背景不消失搜索控制器,来设置
如此,通过所述检索模块可以在所述应用程序中显示一个列表视图,用于用来展示过滤后的内容的,并通过所述搜索控制器显示一搜索框及搜索按钮。
步骤S120,在检测到所述搜索按钮被点击时,获取用户在所述搜索框中输入的查询语句。
在本实施例中,所述搜索控制器带有搜索框,当用户需要搜索的时候在搜索框中输入需要搜索的文字。用户点击搜索按钮之后,就会触发searchText函数,通过seachController函数,拿到seachController的searchBar,通过searchBar获取搜索框中的文字。
步骤S130,在该电子设备100的全局队列中异步调用NSPredicate方法,从所述应用程序预设的第一数组中获得与所述查询语句相关的元素得到第二数组,其中,所述第一数组中的元素为字符串。
在本实施例中,从步骤S120获取到的查询语句为searchString,获取到查询语句后,需要获取串行队列,在串行队列中执行异步的方法。
具体地,首先,获得系统的默认的串行队列的队列优先级,这个队列的优先级为DISPATCH_QUEUE_PRIORITY_DEFAULT即默认的优先级,使用dispatch_get_global_queue方法获得一个全局队列,通过dispatch_async函数在这个队列中完成异步的任务。
在该异步任务中使用NSPredicate方法调用predicateWithBlock函数,predicateWithBlock函数的作用是创建和返回一个NSPredicate任务,NSPredicate任务的过滤是通过一个对象和和一个字典作为条件的,这个任务需要两个参数,通过这两个参数生成一个返回值。
在本实施例中,通过NSPredicate方法对所述应用程序的内部文件中预设的第一预数组进行查询。针对所述第一数组中的每个元素,调用rangeOfString函数判断该元素中的字符串与所述查询语句是否相同。rangeOfString函数将searchString作为参数,使用rangeOfString函数判断出当前检测的元素的字符串包含searchString。
若该元素中的字符串包含searchString,则将该元素的字符串存入所述第二数组中。若该元素中的字符串不包含searchString,则舍弃该元素。
基于上述设计,使用NSPredicate方法来检索,NSPredicate方法是iOS系统自带的一种方式,检索效率较高,在对数据搜索的时候使用了子线程的方式,搜索完毕之后展示搜索的内容的时候使用了主线程,更新UI的操作回到主线程进行,保证到了整个搜索的过程流畅性。
步骤S140,在所述应用程序的主队列中执行异步操作,将所述第二数组中的元素显示于所述搜索界面。
在本实施例中,首先通过dispatch_get_main_queue方法获得所述应用程序的主队列。在主队列中通过dispatch_async方法再执行一个异步操作。
具体地,请参照图3,在本实施例中,步骤S140可以包括子步骤S141及子步骤S142。
子步骤S141,在所述应用程序的主队列中执行异步操作,检测当前所述搜索框中的字符串与所述查询语句是否相同。
子步骤S142,若当前所述搜索框中的字符串与所述查询语句相同,则表示用户正在执行查询操作,使tableView调用reloadData方法将所述第二数组的内容显示出来。
请参照图4,本实施例还提供一种应用于图1所示电子设备100的文本查询装置110,所述装置包括第一显示模块111、获取模块112、查询模块113及第二显示模块114。
所述第一显示模块111,用于通过所述检索模块在所述应用程序中提供一个搜索界面,在所述搜索界面显示一搜索框及搜索按钮。
本实施例中,所述第一显示模块111可用于执行图2所示的步骤S110,关于所述第一显示模块111的具体描述可参对所述步骤S110的描述。
所述获取模块112,用于在检测到所述搜索按钮被点击时,获取用户在所述搜索框中输入的查询语句。
本实施例中,所述获取模块112可用于执行图2所示的步骤S120,关于所述获取模块112的具体描述可参对所述步骤S120的描述。
所述查询模块113,用于在该电子设备100的全局队列中异步调用NSPredicate方法,从预设第一数组中获得与所述查询语句相关的元素得到第二数组,其中,所述第一数组中的元素为字符串。
本实施例中,所述查询模块113可用于执行图2所示的步骤S130,关于所述查询模块113的具体描述可参对所述步骤S130的描述。
所述第二显示模块114,用于在所述应用程序的主队列中执行异步操作,将所述第二数组中的元素显示于所述搜索界面。
本实施例中,所述第二显示模块114可用于执行图2所示的步骤S140,关于所述第二显示模块114的具体描述可参对所述步骤S140的描述。
可选地,在本实施例中,所述第二显示模块114在所述应用程序的主队列中执行异步操作,检测当前所述搜索框中的字符串与所述查询语句是否相同;
若当前所述搜索框中的字符串与所述查询语句相同,则将所述第二数组中的元素显示与所述搜索界面。
可选地,在本实施例中,所述查询模块113在从预设第一数组中获得与所述查询语句相关的元素得到第二数组时,
针对所述第一数组中的每个元素,调用rangeOfString函数判断该元素中的字符串与所述查询语句是否相同;
若该元素中的字符串与所述查询语句相同,则将该元素的字符串存入所述第二数组中;
若该元素中的字符串与所述查询语句相不同,则舍弃该元素。
可选地,在本实施例中,所述第一显示模块111通过tableView控件显示一搜索界面,并通过UISearchController控件在所述搜索界面显示一搜索框及搜索按钮。
综上所述,本申请提供的文本查询方法、装置及电子设备,通过在电子设备的应用程序中植入预设的检索模块,在应用程序中显示一个搜索界面。接收用户在该搜索界面输入的查询语句,并通过调用NSPredicate方法查询与所述查询语句相关的文本内容进行显示。如此,可以直接在应用程序中查询该应用程序内部文件中的文本内容,提高了查询的即时性,提高了应用程序的开发测试效率。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (6)

1.一种文本查询方法,应用于电子设备,其特征在于,用于在应用程序开发测试中从应用程序内部文件中查找文本字符,所述电子设备安装有应用程序,所述应用程序中植入有预设的检索模块,所述方法包括:
在所述检索模块中定义列表控制器及搜索控制器,其中,所述列表控制器通过tableView控件实现,用于显示一搜索界面,所述搜索控制器通过UISearchController控件实现,用于在所述搜索界面显示一搜索框及搜索按钮;
在检测到所述搜索按钮被点击时,触发searchText函数,通过searchController函数获取searchController的searchBar,通过所述searchBar获取用户在所述搜索框中输入的查询语句;
获得系统的默认的串行队列的队列优先级,所述队列的优先级为默认优先级,使用dispatch_get_global_queue方法获得一个全局队列;
在该电子设备的全局队列中异步调用NSPredicate方法,从所述应用程序预设的第一数组中获得与所述查询语句相关的元素得到第二数组,其中,所述第一数组中的元素为字符串;
在所述应用程序的主队列中执行异步操作,检测当前所述搜索框中的字符串与所述查询语句是否相同;
若当前所述搜索框中的字符串与所述查询语句相同,则将所述第二数组中的元素显示于所述搜索界面。
2.根据权利要求1所述的方法,其特征在于,所述从所述应用程序预设的第一数组中获得与所述查询语句相关的元素得到第二数组的步骤,包括:
针对所述第一数组中的每个元素,调用rangeOfString函数判断该元素中的字符串是否包含所述查询语句;
若该元素中的字符串包含所述查询语句,则将该元素的字符串存入所述第二数组中;
若该元素中的字符串不包含所述查询语句,则舍弃该元素。
3.一种文本查询装置,应用于iOS系统的电子设备,其特征在于,用于在应用程序开发测试中从应用程序内部文件中查找文本字符,所述电子设备安装有应用程序,所述应用程序中植入有预设的检索模块,所述装置包括:
第一显示模块,用于在所述检索模块中定义列表控制器及搜索控制器,其中,所述列表控制器通过tableView控件实现,用于显示一搜索界面,所述搜索控制器通过UISearchController控件实现,用于在所述搜索界面显示一搜索框及搜索按钮;
获取模块,用于在检测到所述搜索按钮被点击时,触发searchText函数,通过searchController函数获取searchController的searchBar,通过所述searchBar获取用户在所述搜索框中输入的查询语句;
查询模块,用于在该电子设备的全局队列中异步调用NSPredicate方法,从预设第一数组中获得与所述查询语句相关的元素得到第二数组,其中,所述第一数组中的元素为字符串;
第二显示模块,用于在所述应用程序的主队列中执行异步操作,检测当前所述搜索框中的字符串与所述查询语句是否相同;
若当前所述搜索框中的字符串与所述查询语句相同,则将所述第二数组中的元素显示与所述搜索界面;
所述装置还用于:获得系统的默认的串行队列的队列优先级,所述队列的优先级为默认优先级,使用dispatch_get_global_queue方法获得一个全局队列。
4.根据权利要求3所述的装置,其特征在于,所述查询模块在从预设第一数组中获得与所述查询语句相关的元素得到第二数组时,
针对所述第一数组中的每个元素,调用rangeOfString函数判断该元素中的字符串是否包含所述查询语句;
若该元素中的字符串包含所述查询语句,则将该元素的字符串存入所述第二数组中;
若该元素中的字符串不包含所述查询语句,则舍弃该元素。
5.一种电子设备,其特征在于,包括处理器及和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,处理器执行所述机器可执行指令以实现权利要求1-2任一所述的方法。
6.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现权利要求1-2任一所述的方法。
CN201810034424.8A 2018-01-15 2018-01-15 文本查询方法、装置及电子设备 Active CN108287885B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810034424.8A CN108287885B (zh) 2018-01-15 2018-01-15 文本查询方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810034424.8A CN108287885B (zh) 2018-01-15 2018-01-15 文本查询方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN108287885A CN108287885A (zh) 2018-07-17
CN108287885B true CN108287885B (zh) 2021-03-16

Family

ID=62835452

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810034424.8A Active CN108287885B (zh) 2018-01-15 2018-01-15 文本查询方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN108287885B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101310277A (zh) * 2005-11-15 2008-11-19 皇家飞利浦电子股份有限公司 获得文本的表示的方法
CN102750275A (zh) * 2011-04-18 2012-10-24 华东师范大学 一种基于情景的查询器以及相应的控制方法、系统
CN106339427A (zh) * 2016-08-16 2017-01-18 福建中金在线信息科技有限公司 一种快速搜索的方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7660793B2 (en) * 2006-11-13 2010-02-09 Exegy Incorporated Method and system for high performance integration, processing and searching of structured and unstructured data using coprocessors

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101310277A (zh) * 2005-11-15 2008-11-19 皇家飞利浦电子股份有限公司 获得文本的表示的方法
CN102750275A (zh) * 2011-04-18 2012-10-24 华东师范大学 一种基于情景的查询器以及相应的控制方法、系统
CN106339427A (zh) * 2016-08-16 2017-01-18 福建中金在线信息科技有限公司 一种快速搜索的方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
NSPredicate过滤数组数据;Mr布鲁斯;《https://www.cnblogs.com/sunshine-anycall/p/3789887.html》;20140615;第1-5页 *
基于iOS的搜狗阅读客户端的设计与实现;仲维涛;《中国优秀硕士学位论文全文数据库·信息科技辑》;20170715;第35-50页,附图4-9 *

Also Published As

Publication number Publication date
CN108287885A (zh) 2018-07-17

Similar Documents

Publication Publication Date Title
US10866975B2 (en) Dialog system for transitioning between state diagrams
US9672012B2 (en) Code validation using content assist
CN107729475B (zh) 网页元素采集方法、装置、终端与计算机可读存储介质
US11321105B2 (en) Interactive informational interface
CN107729227B (zh) 应用程序测试范围确定方法、系统、服务器和存储介质
CN105824830B (zh) 一种显示页面的方法、客户端及设备
CN107612908B (zh) 网页篡改监测方法及装置
CN106843912B (zh) 页面信息获取方法及装置
US11803403B2 (en) Contextual navigation menu
KR101767481B1 (ko) 프로그램 분석 장치 및 프로그램 분석 제공 방법
CN108287885B (zh) 文本查询方法、装置及电子设备
US20230237087A1 (en) System to generate contextual queries
KR101996586B1 (ko) 정보 표시 방법, 단말 및 서버
CN110780970A (zh) 数据筛选方法、装置、设备及计算机可读存储介质
CN105843826A (zh) 一种查找方法和装置
CN112148869B (zh) 文本参考信息生成方法、装置、电子设备及存储介质
US9477448B2 (en) Screen-oriented computing program refactoring
US20150378530A1 (en) Command surface drill-in control
KR20190106044A (ko) 웹 페이지의 표시 방법 및 전자 장치
CN114048147B (zh) 测试用例生成方法、装置、存储介质和电子设备
CN109815426A (zh) 页面信息检测方法及装置、终端和计算机可读存储介质
US11494052B1 (en) Context based interface options
US11500623B2 (en) Reverting merges across branches
CN117762478A (zh) 一种元素标识符生成方法及装置
CN116150517A (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
TR01 Transfer of patent right

Effective date of registration: 20240622

Address after: Floors 4-1, Building 8, No. 9 Yuxi Road, Shunyi District, Beijing, 101300

Patentee after: Beijing Shunyu Zhongbo Enterprise Service Co.,Ltd.

Country or region after: China

Address before: 11 / F, building B1, software industry phase 4.1, No.1, Software Park East Road, Donghu New Technology Development Zone, Wuhan City, Hubei Province, 430000

Patentee before: WUHAN DOUYU NETWORK TECHNOLOGY Co.,Ltd.

Country or region before: China