本文档主要介绍操作符函数的语法规则,包括参数说明、函数示例等。

函数列表

类型 函数名称 功能描述
基础类型转换 ct_int 将字段或表达式的值转换为整数。
ct_float 将字段或表达式的值转换为浮点数。
ct_str 将字段或表达式的值转换为字符串。
ct_bool 将字段或表达式值转换为布尔值。
数字转换 ct_chr 将字段或表达式的ANSI值、Unicode值转换为对应字符。
ct_ord 将字段或表达式的字符转换为对应ANSI值、Unicode值。
ct_hex 将字段或表达式的数值转换为十六进制数。
ct_oct 将字段或表达式的数值转换为八进制数。
ct_bin 将字段或表达式的数值转换为二进制数。
进制转换 bin2oct 将二进制字符串转换为八进制字符串。
bin2hex 将二进制字符串转换为十六进制字符串。

ct_int

使用ct_int函数将字段或表达式的值转换为整数。

  • 函数格式
    ct_int(值, base=10)
  • 参数说明
    名称 类型 是否必填 说明
    数字或数字字符串 待转换的值。
    base Number 参数值所代表的进制,默认为十进制。例如base=8,表示将八进制要转成十进制。
  • 返回结果

    返回整型数值。

  • 函数示例
    • 示例1:将字符串转换成整型。
      • 原始日志
        number: 2
      • 加工规则
        e_set("int_number", ct_int(v("number")))
      • 加工结果
        number: 2
        int_number:  2
    • 示例2:将十六进制转换成十进制。
      • 原始日志
        number: AB
      • 加工规则
        e_set("int_number", ct_int(v("number"),base=16))
      • 加工结果
        number: AB
        int_number:  171

ct_float

使用ct_float函数将字段或表达式的值转换为浮点数。

  • 函数格式
    ct_float(值)
  • 参数说明
    名称 类型 是否必填 说明
    数字或数字字符串 待转换的值。
  • 返回结果

    返回浮点类型数值。

  • 函数示例
    • 原始日志
      price: 2
    • 加工规则
      e_set("price_float", ct_float(v("price")))
    • 加工结果
      price: 2
      price_float:  2.0

ct_str

使用ct_str函数将字段或表达式的值转换为字符串。

  • 函数格式
    ct_str(值)
  • 参数说明
    名称 类型 是否必填 说明
    任意值 待转换的值。
  • 返回结果

    返回字符串。

  • 函数示例
    • 加工规则
      e_set("ct_str", ct_str(b'test byte'))
    • 加工结果
      ct_str: test byte

ct_bool

使用ct_bool函数将字段或表达式值转换为布尔值。对于不同类型的值返回真假的策略请参见真假判断

  • 函数格式
    ct_bool(值)
  • 参数说明
    名称 类型 是否必填 说明
    任意值 待转换的值。
  • 返回结果

    返回布尔值。

  • 函数示例
    • 原始日志
      num: 2
    • 加工规则
      e_set("ct_bool", ct_bool(v("number")))
    • 加工结果
      num: 2
      ct_bool: true

ct_chr

使用ct_chr函数将字段或表达式的ANSI值、Unicode值转换为对应字符。

  • 函数格式
    ct_chr(值)
  • 参数说明
    名称 类型 是否必填 说明
    数字或数字字符串 待转换的值。
  • 返回结果

    返回chr类型对应的字符。

  • 函数示例
    • 原始日志
      number: 78
    • 加工规则
      e_set("ct_chr", ct_chr(v("number")))
    • 加工结果
      number: 78
      ct_chr: N

ct_ord

使用ct_ord函数将字段或表达式的字符转换为对应ANSI值、Unicode值。

  • 函数格式
    ct_ord(值)
  • 参数说明
    名称 类型 是否必填 说明
    String 待转换的值,长度为1。
  • 返回结果

    返回对应的ANSI值或Unicode值。

  • 函数示例
    • 原始日志
      world: a
    • 加工规则
      e_set("ct_ord", ct_ord(v("world")))
    • 加工结果
      world: a
      ct_ord: 97

ct_hex

使用ct_hex函数将字段或表达式的数值转换为十六进制数。

  • 函数格式
    ct_hex(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待转换的值。
  • 返回结果

    返回十六进制的数值。

  • 函数示例
    • 原始日志
      number: 123
    • 加工规则
      e_set("ct_hex", ct_hex(v("number")))
    • 加工结果
      number: 123
      ct_hex: 0x7b

ct_oct

使用ct_oct函数将字段或表达式的数值转换为八进制数。

  • 函数格式
    ct_oct(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待转换的值。
  • 返回结果

    返回八进制的数值。

  • 函数示例
    • 原始日志
      number: 123
    • 加工规则
      e_set("ct_oct", ct_oct(v("number")))
    • 加工结果
      number: 123
      ct_oct: 0o173

ct_bin

使用ct_bin将字段或表达式的数值转换为二进制数。

  • 函数格式
    ct_bin(值)
  • 参数说明
    名称 类型 是否必填 说明
    数字或数字字符串 待转换的值。
  • 返回结果

    返回二进制的数值。

  • 函数示例
    • 原始日志
      number: 123
    • 加工规则
      e_set("ct_bin", ct_bin(v("number")))
    • 加工结果
      number: 123
      ct_bin: 0b1111011

bin2oct

使用bin2oct函数将二进制字符串转换为八进制字符串。

  • 函数格式
    bin2oct(binary)
  • 参数说明
    名称 类型 是否必填 说明
    binary Binary Binary类型的字符串。
  • 返回结果

    返回八进制的字符串。

  • 函数示例
    • 原始日志
      test : test
    • 加工规则
      e_set("new",bin2oct(base64_decoding("ARi8WnFiLAAACHcAGgkADV37Xs8BXftezgAdqwF9")))
    • 加工结果
      test : test
      new : 0118bc5a71622c00000877001a09000d5dfb5ecf015dfb5ece001dab017d

bin2hex

使用bin2hex函数将二进制字符串转换为十六进制字符串。

  • 函数格式
    bin2hex(binary)
  • 参数说明
    名称 类型 是否必填 说明
    binary Binary Binary类型的字符串。
  • 返回结果

    返回十六进制的字符串。

  • 函数示例
    • 原始日志
      test : test
    • 加工规则
      e_set("new",bin2hex(base64_decoding("ARi8WnFiLAAACHcAGgkADV37Xs8BXftezgAdqwF9")))
    • 加工结果
      test : test
      new :0118bc5a71622c00000877001a09000d5dfb5ecf015dfb5ece001dab017d