文本搜索 | Qlik Cloud帮助
跳到主要内容 跳到补充内容

文本搜索

上次更新日期:2026/10/9

文本搜索是您可以在 Qlik Sense 中使用的主要搜索方法。使用引号、通配符和修饰符搜索字段中的值。在键入搜索字符串后,Qlik Sense 将筛选字段值,并显示匹配条目。

文本搜索可以分为两种不同的搜索模式:

  • 普通搜索

  • 通配符搜索

文本搜索中的搜索模式
搜索类型 描述 示例 支持的数据类型
普通搜索 使用包含加号和减号修饰符的文本 ACME -Inc 字符或文本字符串、数值、双值
通配符搜索 使用包含通配符的文本,不包括加号和减号修饰符 *公司 字符或文本字符串、数值、双值

普通搜索

普通文本不能包含通配符,但可以包含加号和减号修饰符。普通搜索只能交互使用,不能用于集合分析表达式内的搜索。

如果执行常规搜索,将显示与搜索字符串匹配的字符串。如果使用多个以空格分隔的字符串,则会将其中每个字符串视为单独的搜索字符串,并显示包含任一字符串的所有字段值。

使用单个搜索字符串(无引号)进行普通文本搜索

单个字符串 'ab' 的文本搜索,并显示结果。不使用引号,并显示结果。

使用由空格分隔的两个搜索字符串进行普通文本搜索(无引号)

两个单独的字符串的文本搜索:'abc' 和 'solution,用空格分隔。不使用引号,并显示结果。
信息注释

由于客户端和引擎处理您的搜索输入的方式存在差异,标准空格字符是唯一完全受支持用作词边界令牌的分隔符。其他分隔符可能受引擎支持并被解释为有效的词边界标记,但由于客户端输入限制而无法使用。

这些客户端限制是必需的,以便客户端能够(通过仅限 ASCII 的正则表达式)逐字符解析并结构化输入的文本字符串,并将其转换为独立的、可搜索的词。

词边界分类器的实际解释是由 ICU 库通过 Unicode 提供的一种基于规则的分类,且高度依赖于系统语言设置。

普通文本搜索示例
示例 结果
"orange juice"

仅找到包含整个字符串 “orange juice” 的字段值。请参阅 引号。

orange juice 在没有引号的情况下,将显示包含 “orange” 或 “juice” 的全部字段。
+orange +juice 查找诸如 “orange juice”, “orange and apple juice” 和 “juice from oranges” 的匹配。请参阅 加号修饰符 (+)。
-orange ‑juice 排除包含 orange 或 juice 的结果。请参阅 减号修饰符 (-)。

引号

如果要将各单独的搜索字符串仅视为一个字符串,则使用引号 (" ") 将这些字符串连接在一起。

使用单个搜索字符串(包含在引号中)进行文本搜索

单个字符串 'abc solution' 文本搜索,带引号。结果只显示包含整个搜索字符串的字段;在这种情况下,唯一的结果是 'ABC Solutions'。

修饰符

修饰符允许您通过包含或排除满足特定条件的值来优化搜索结果。

有两种类型的修饰符可用:

  • 加号修饰符 (+)

  • 减号修饰符 (-)

加号修饰符 (+)

使用加号修饰符时,可以设置以下条件:匹配条目中必须包含带加号的字符串。但是,这些字符串不一定需要彼此相邻,也不一定使用与输入顺序相同的顺序。

在以下示例中,加号修饰符放置在值 abc 旁边。结果必须包含此值,但顺序无关紧要。第二个字符串 solution 不受此条件的约束,因此它可以出现在结果中,但不需要存在。

搜索包含加号修饰符 (+)

两个单独字符串前面包含加号修饰符的搜索。具体来说,搜索值 '+abc solution'。实际搜索不包含引号。

减号修饰符 (-)

将减号修饰符放在搜索词之前会排除包含该文本的结果。

在本例中,单词 "solution" 前的负号将从结果中删除包含此字符串的所有值。

带减号修饰符 (-) 的搜索字符串

使用减号修饰符的搜索。具体来说,搜索值 '-solution'。实际搜索不包含引号。

组合修饰符

可以在单个搜索中组合减号和加号修饰符。在本例中,包含字符串 "solution" 的值将被排除,并且字符串 "abc" 必须存在,以便该值出现在结果中。

组合减号和加号修饰符搜索

使用减号和加号修饰符的搜索。具体来说,搜索值 '-solution +abc'。实际搜索不包含引号。

通配符搜索

通配符搜索允许您使文本搜索更加灵活。通配符搜索可用于交互式情况和集合分析。通配符搜索不能包含加号或减号修饰符。

可以在搜索字符串中使用一个或多个通配符。可以使用以下通配符:

  • * 通配符

  • ? 通配符

  • ^ 通配符

通配符文本搜索示例
示例 结果
a* 查找所有以 “a” 开头的值,包括具有数个词的字符串,其中第一个词以 “a” 开头。
*b 查找所有以字母 “b” 结束的值,包括具有数个词的字符串,其中最后一个词以 “b” 结束。
*c* 找到包含字母 “c” 的全部值,包括含多个单词的字符串。
*^ab*

返回具有以 “ab” 开头的词的所有值。

相当于正常搜索 “ab”,但与正常搜索不同,它可以利用通配符进行更复杂的搜索。它还可以用于编程搜索,如集合分析。

r?ck 找到有四个字母且以 “r” 开头,后跟任何字符,并以 “ck” 结尾的全部值,例如 “rack”, “rick”, “rock” 和 “ruck”。
r?? ????d 查找包括以 “r” 开头的三字母词的所有值以及以 “d” 结尾的五字母词。
信息注释如果使用通配符,则仅显示与整个搜索字符串匹配的记录,即空格不表示逻辑 OR。对于搜索字符串 '*creamed',不能在 "Rocky's creamed corn" 中获得匹配项,因为该值不是以 “creamed” 结尾。对于 “creamed*”,也不能在 "Rocky's creamed corn" 中获得匹配项,因为该值不是以 “creamed” 开头。
信息注释搜索字符串中的空格将导致结果不同。如果搜索 “*corn”,则可在以(例如)“popcorn” 以及 “corn” 结尾的字符串中获得匹配项。如果在搜索字符串 “* corn” 中使用空格,则仅获取以 “corn” 结尾的匹配项。

* 通配符

* 通配符用于替换零个或多个字符,包括空格。此通配符较灵活,可与特定位置的任何字符或任何字符块匹配。

在本例中,结果中列出了以字符串“company”开头的所有值。

在定义的字符后使用 * 通配符搜索字符串

在几个定义的字符后使用 * 通配符进行搜索。将此通配符放在单词“Company”之后将返回以该单词开头的所有值。实际搜索不包含引号。

这里,结果中列出了所有以字符串 "company" 结尾的值。

在定义的字符前使用 * 通配符搜索字符串

在多个定义的字符之前使用 * 通配符进行搜索。将此通配符放在单词 'Company' 之前将返回以该单词结尾的所有值。实际搜索不包含引号。

通过在字符串前后放置 * 通配符,结果将包括包含此字符串的所有值。

在定义的字符之前和之后使用 * 通配符搜索字符串

搜索单词 'Company',并包含在 * 通配符中。以这种方式配置通配符将返回包含该单词的所有值。实际搜索不包含引号。

? 通配符

该 ?通配符用于代替单个字符,包括空格。此通配符在以下情况下很有用:当您怀疑某字符串可能拼写错误时,当您不确定拼写时,或当字符串包含可能难以正确重现的特殊字符时。

此通配符可以替换字符串中的所有字符,也可以与定义的字符组合使用。

包含 ? 的搜索字符串对于所有字符的通配符

使用 ? 搜索适用于所有搜索字符的通配符。在这种情况下,搜索中包含的字符数相同的所有值都列在结果中(例如,'ABC Solution')。

包含 ? 的搜索字符串三个定义的字符后的通配符

使用 ? 搜索对于前几个字符 'ABC' 之外的所有搜索字符的通配符(实际搜索中不使用引号)。在这种情况下,将列出一个结果:'ABC Solution'。

^ 通配符

^ 通配符用于按字段值中单词开头的一个或多个字符筛选值。此通配符必须与其他通配符结合使用。

在此示例中,搜索字符串 "*^a*" 将返回包含以字母“a”开头的字符串的所有值。

使用 ^ 和 * 通配符搜索字符串

组合两种不同的通配符类型进行搜索。

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们!