如何在Sumologic正则查询中匹配单引号或将其放入字符组
Sumologic查询解析器会优先识别单引号为字符串边界标记,正则字面量内的单引号会在正则引擎解析前就被误判为未闭合的字符串起始,因此直接写'或\'都无法生效。
方案1:使用Unicode转义序列替换单引号(最推荐)
单引号的Unicode编码为\u0027,直接在正则字符组中使用该序列即可绕开解析器的单引号识别逻辑,不会触发语法报错。
修改后的查询示例:
_sourceCategory="some_category" | where url matches /^\/stuff\/[\w\u0027]+\/.*/ and other_field="some_value"
方案2:用字符串形式定义正则后转换
将正则内容放在双引号包裹的字符串中,再通过toRegex()函数转换为正则对象,双引号内的单引号不会被解析器误判为字符串边界。
注意双引号字符串内的反斜杠需要额外转义,示例如下:
_sourceCategory="some_category" | where url matches toRegex("^/stuff/[\\w']+/.*") and other_field="some_value"
内容的提问来源于stack exchange,提问作者fooiey
相关产品推荐
相关产品推荐

