跳转至

特殊字符转义查询


查看器

在查看器中,部分字符具有特殊意义,例如 空格 用于分隔多个单词。如果检索内容包含以下字符,需要进行特殊处理:空格:"\()[]{}!

由于搜索和筛选使用的查询语法不同,特殊字符的处理方式也有所区别。

筛选

支持多种运算符,包括 =!=wildcard 等。

由于 wildcard 语法中反斜杠 \ 有特殊含义,需要进行转义处理:

  • 如果检索文本中包含 \,需要在前面再加一个反斜杠 \ 进行转义查询;
  • 使用其他运算符(如 =!= 等)进行筛选时,不需要进行转义处理。

搜索

使用 query_string() 查询语法。

query_string 语法中,反斜杠 \ 和双引号 " 有特殊含义,需要进行转义处理:

  • \:需要在前面再加三个反斜杠 \ 进行转义;
  • ":需要在前面再加一个反斜杠 \ 进行转义。·

转换方法

方式一:将文本变成短语

在文本两侧加上双引号 ",可以将文本转换为短语。在这种情况下,双引号内的内容将作为一个整体进行匹配搜索,通配符将失效。

如果文本中包含 \",此方法将无法检索,请使用“方法二”进行查询。

示例:

检索字段名 cmdline,字段值 nginx:worker process

  • 搜索
"nginx: worker process"   //检索成功,精准匹配单词
"nginx * process"   //检索失败,因为双引号中 * 不会被认为是通配符
  • 筛选
cmdline:"nginx: worker process"   //检索成功,精准匹配单词
cmdline:"nginx: worker*"  //检索失败,因为双引号中 * 不会被认为是通配符

方式二:对字符进行转义

在特殊字符前添加一个反斜杠 \ 进行转义。如果检索的文本中本身包含 \,搜索和筛选的处理方式不同:

  • 搜索:需要在字符前再加三个反斜杠 \ 进行转义;
  • 筛选:只需要加一个反斜杠 \ 即可。

示例:

检索字段名 cmdline,字段值 E:\software_installer\vm\vmware-authd.exe

  • 搜索
E\:\\\\software_installer\\\\vm\\\\vmware-authd.exe     //检索成功,精准匹配单词
E\:\\\\software_installer*exe     //检索成功,通配符模糊匹配
  • 筛选
cmdline:E\:\\software_installer\\vm\\vmware-authd.exe    //检索成功,精准匹配单词
cmdline:E\:\\software_installer*exe    //检索成功,通配符模糊匹配

其他场景

在使用 DQL 查询数据时,需要对一些特殊字符进行处理,涉及的功能包括:图表查询、查询工具、指标分析、监控器等。

文档评价

文档内容是否对您有帮助? ×