全部產品
Search
文件中心

Simple Log Service:字串函數

更新時間:Jun 30, 2024

本文介紹字串函數的文法規則,包括參數解釋、函數樣本等。

函數列表

類型

函數

說明

多字串操作

str_format

按照指定格式對字串進行格式化。

str_join

通過串連符將輸入的字串串連,產生一個新的字串。

str_zip

將兩個值或運算式的字串進行拆分,然後再合并成一個字串。

編碼解碼

str_encode

按照指定的編碼格式對字串進行編碼。

str_decode

按照指定的編碼格式對傳入值進行解碼。

str_hex_escape_encode

轉義特殊字元,支援將十六進位字元轉義為中文字元。

str_uuid

隨機產生UUID。

排序、倒敘、替換

str_sort

將指定的對象進行排序。

str_reverse

將一個字串進行反轉。

str_replace

根據規則將舊字串替換成新字串。

str_logstash_config_normalize

將Logstash配置語言轉成JSON格式。

str_translate

將字串中的指定字元按照對應關係進行替換。

常規規整

str_strip

刪除字串中指定的字元。

str_lstrip

刪除字串開頭的指定字元。

str_rstrip

刪除字串結尾的指定字元。

str_lower

將字串中所有大寫字元轉換為小寫字元。

str_upper

將字串中所有小寫字元轉換為大寫字元。

str_title

將所有單詞的第一個字母轉化為大寫,其餘字母均為小寫。

str_capitalize

將字串的第一個字母轉化為大寫,其他字母轉化為小寫。

str_swapcase

對字串的大小寫字母進行轉換。

尋找判斷

str_count

統計字串裡某個字元出現的次數。

str_find

判斷原字串中是否包含指定的子字串。

str_rfind

尋找字串中指定字元或者字串最後一次出現的位置。

str_endswith

判斷字串是否以指定尾碼結尾。

str_startswith

判斷字串是否以指定字串開頭。

切分

str_split

通過指定分隔字元對字串進行分割。

str_splitlines

通過分行符號符對字串進行分割。

str_partition

根據指定的分隔字元將字串從左往右分割為三部分。

str_rpartition

根據指定的分隔字元將字串從右往左分割為三部分。

格式化

str_center

用指定字元將字串填充到指定長度。

str_ljust

用指定字元將字串從結尾填充至指定長度。

str_rjust

用指定字元將原字串從開頭填充直至指定長度。

str_zfill

用字元0從開頭將字串填充至指定長度。

str_expandtabs

將字串中的\t轉換為空白格。

字元集判斷

str_isalnum

判斷字串是僅由字母和數字組成。

str_isalpha

判斷字串是否僅由字母組成。

str_isascii

判斷字串是否在ASCII中。

str_isdecimal

判斷字串是否僅包含十進位字元。

str_isdigit

判斷字串是否僅由數字組成。

str_isidentifier

判斷字串是否是有效Python標識符,也可以用來判斷變數名是否合法。

str_islower

判斷字串是否由小寫字母組成。

str_isnumeric

判斷字串是否由數字組成。

str_isprintable

判斷字串中是否所有字元都是可列印字元。

str_isspace

判斷字串是否僅由空白字元組成。

str_istitle

判斷字串中所有單詞的拼字首字母是否為大寫,且其他字母為小寫。

str_isupper

判斷字串中所有的字母是否都為大寫。

字串函數可以和如下函數配合使用:

類型

函數

說明

多字串操作

op_add

計算多個值的和,可用於數值、字串等。

op_max

計算多個數值的最大值,可用於數值、字串等。

op_min

計算多個數值的最小值,可用於數值、字串等。

字串截取

op_slice

對字串進行截取。

長度計算

op_len

計算字串的長度。

str_format

將字串按照指定格式進行格式化。

  • 函數格式

    str_format(format_string, value1, value2, ...)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    format_string

    任意(自動轉為String)

    轉換後的格式。例如{}={}

    value1

    任意

    待格式化的值1。

    value2

    任意

    待格式化的值2。

  • 返回結果

    返回格式化後的字串。

  • 函數樣本

    • 原始日誌

      class: Format
      escape_name: Traditional
    • 加工規則

      e_set("str_format", str_format("{}={}", v("class"), v("escape_name")))
    • 加工結果

      class: Format
      escape_name: Traditional
      str_format: Format=Traditional

str_join

通過串連符將輸入的字串串連產生一個新的字串。

  • 函數格式

    str_join(connector, value1,  value2, ....)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    connector

    任意(自動轉為String)

    串連符。例如驚嘆號(!)、at符號(@)、井號(#)、貨幣符號($)、百分比符號(%)等。

    value1

    任意(自動轉為String)

    待串連的值。

    value2

    任意(自動轉為String)

    待串連的值。

  • 返回結果

    返回串連後的字串。

  • 函數樣本

    • 原始日誌

      name: ETL
      company: aliyun.com
    • 加工規則

      e_set("email", str_join("@", v("name"), v("company")))
    • 加工結果

      name: ETL
      company: aliyun.com
      email:ETL@aliyun.com

str_encode

按照指定的編碼格式對字串進行編碼。

  • 函數格式

    str_encode(value, "utf8", errors="ignore")
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被編碼的值。

    encoding

    String

    編碼格式,預設為UTF-8。支援ASCII。

    errors

    String

    按照編碼格式無法識別字元時的處理方式。取值包括:

    • ignore(預設值):忽略不做編碼。

    • strict:直接報錯,丟棄此條日誌資料。

    • replace:使用半形問號(?)替換無法識別部分。

    • xmlcharrefreplace:使用對應XML字元替換無法識別部分。

  • 返回結果

    返回編碼後的字串。

  • 函數樣本

    • 樣本1

      • 原始日誌

        test: asewds
      • 加工規則

        e_set("f1", str_decode(str_encode("你好", "utf8"), "utf8"))
      • 加工結果

        test: asewds
        f1: 你好
    • 樣本2

      • 原始日誌

        f2: test 測試資料
      • 加工規則

        e_set("f1", str_encode(v("f2"), "ascii", errors="ignore"))
      • 加工結果

        f1:test 
        f2:test 測試資料
    • 樣本3

      • 原始日誌

        f2: test 測試資料
      • 加工規則

        e_set("f1", str_encode(v("f2"), "ascii", errors="strict"))
      • 加工結果

        執行時直接報錯。

    • 樣本4

      • 原始日誌

        f2: test 測試資料
      • 加工規則

        e_set("f1", str_encode(v("f2"), "ascii", errors="replace"))
      • 加工結果

        f1:test ????
        f2:test 測試資料
    • 樣本5

      • 原始日誌

        f2: test 測試資料
      • 加工規則

        e_set("f1", str_encode(v("f2"), "ascii", errors="xmlcharrefreplace"))
      • 加工結果

        f1:test 测试数据
        f2:test 測試資料

str_decode

按照指定的編碼格式對傳入值進行解碼。

  • 函數格式

    str_decode(value, "utf8", errors="ignore")
    說明

    str_decode只能處理Byte類型的資料。

  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被解碼的值。

    encoding

    任意(自動轉為String)

    編碼格式,預設為UTF-8。 支援ASCII。

    errors

    任意(自動轉為String)

    按照編碼格式無法識別字元時的處理方式。取值包括:

    • ignore(預設值):忽略不做解碼。

    • strict:直接報錯,丟棄此條日誌資料。

    • replace:使用半形問號(?)替換無法編解碼部分。

    • xmlcharrefreplace:使用對應XML字元替換無法編解碼部分。

  • 返回結果

    返回解碼後的值。

  • 函數樣本

    • 原始日誌

      test: asewds
    • 加工規則

      e_set("encoding", str_decode(b'\xe4\xbd\xa0\xe5\xa5\xbd', "utf8", 'strict'))
    • 加工結果

      test: asewds
      encoding: 你好

str_replace

將舊字串根據規則替換成新字串。

  • 函數格式

    str_replace(value, old, new, count)
    說明

    該函數為基本變參調用形式,請參見函數調用方式

  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被替換的值。

    old

    任意(自動轉為String)

    需要被替換的字串。

    new

    任意(自動轉為String)

    替換後新的字串。

    count

    Number

    替換次數,可選項。如果不設定count,則表示替換所有。

  • 返回結果

    返回一個新字串。

  • 函數樣本

    將dict類型轉成JSON類型。

    • 原始日誌

      content:  {'referer': '-', 'request': 'GET /phpMyAdmin', 'status': 404, 'data-1': {'aaa': 'Mozilla', 'bbb': 'asde'}, 'data-2': {'up_adde': '-', 'up_host': '-'}}
    • 加工規則

      e_set("content_json", str_replace(ct_str(v("content")),"'",'"'))
    • 加工結果

      content:  {'referer': '-', 'request': 'GET /phpMyAdmin', 'status': 404, 'data-1': {'aaa': 'Mozilla', 'bbb': 'asde'}, 'data-2': {'up_adde': '-', 'up_host': '-'}}
      content_json:  {"referer": "-", "request": "GET /phpMyAdmin", "status": 404, "data-1": {"aaa": "Mozilla", "bbb": "asde"}, "data-2": {"up_adde": "-", "up_host": "-"}}

str_sort

將指定的對象進行排序。

  • 函數格式

    str_sort(value, reverse=False)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被排序的原字串。

    reverse

    Boolean

    預設為False,表示升序排列。

  • 返回結果

    返回排序後的字串。

  • 函數樣本

    • 樣本1:對str字串整體進行排序。

      • 原始日誌

        str: twish
      • 加工規則

        e_set("str_sort", str_sort(v("str")))
      • 加工結果

        str: twish
        str_sort: histw
    • 樣本2:對str字串進行兩個一組的倒排序。

      • 原始日誌

        str: twish
      • 加工規則

        e_set("str_sort", str_sort(v("str"), reverse=True))
      • 加工結果

        str: twish
        str_sort: wtsih

str_reverse

將一個字串進行反轉。

  • 函數格式

    str_reverse(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被反轉的值。

  • 返回結果

    返回反轉後的字串。

  • 函數樣本

    對欄位data的值進行反轉。

    • 原始日誌

      data:twish
    • 加工規則

      e_set("reverse_data", str_reverse(v("data")))
    • 加工結果

      data:twish
      reverse_data:hsiwt

str_logstash_config_normalize

將Logstash配置格式轉成JSON格式。

  • 函數格式

    str_logstash_config_normalize(value)
    說明

    關於Logstash類型說明請參見Logstash

  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被轉換的值。

  • 返回結果

    返迴轉換後的字串。

  • 函數樣本

    對Logstash類型資料進行轉換。

    • 原始日誌

      logstash: {"name"=>"tw5"}
    • 加工規則

      e_set("normalize_data", str_logstash_config_normalize(v("logstash")))
    • 加工結果

      logstash: {"name"=>"tw5"}
      normalize_data:{"name":"tw5"}

str_hex_escape_encode

將特殊字元進行轉義,支援十六進位字元轉義為中文字元。

  • 函數格式

    str_hex_escape_encode(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被轉義的值。

  • 返回結果

    返迴轉義後的字串。

  • 函數樣本

    將myfriend欄位的值轉義為中文字元。

    • 原始日誌

      myfriend: \xE6\x9F\xB3\xE4\xBA\x91
    • 加工規則

      e_set("hex_myfriend", str_hex_escape_encode("myfriend"))
    • 加工結果

      hex_myfriend:myfriend
      myfriend:\xE6\x9F\xB3\xE4\xBA\x91

str_strip

刪除字串中指定的字元。

  • 函數格式

    str_strip(value, chars)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被修改的原字串。

    chars

    任意(自動轉為String)

    字串開頭和結尾需要刪除的字元集,預設為\t\r\n

  • 返回結果

    返回修改後的字串。

  • 函數樣本

    • 樣本1:刪除strip開頭的*字元。

      • 原始日誌

        strip: ***I love Etl
      • 加工規則

        e_set("str_strip", str_strip(v("strip"), "*"))
      • 加工結果

        strip: ***I love Etl
        str_strip:I love Etl
    • 樣本2:刪除strip開頭的空格。

      • 原始日誌

        strip:    I love Etl
      • 加工規則

        e_set("str_strip", str_strip(v("strip")))
      • 加工結果

        strip:    I love Etl
        str_strip: I love Etl
    • 樣本3:刪除的字元集為xy

      • 原始日誌

        strip:xy123yx
      • 加工規則

        e_set("str_strip", str_strip(v("strip"), "xy"))
      • 加工結果

        strip:xy123yx
        str_strip:123

str_lower

將字串中所有大寫字元轉換為小寫字元。

  • 函數格式

    str_lower(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被轉換的字串。

  • 返回結果

    返迴轉換後的字串。

  • 函數樣本

    把name值全部轉換成小寫字母。

    • 原始日誌

      name: Etl
    • 加工規則

      e_set("str_lower", str_lower(v("name")))
    • 加工結果

      name: Etl
      str_lower: etl

str_upper

將字串中所有小寫字元轉換為大寫字元。

  • 函數格式

    str_upper(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被轉換的字串。

  • 返回結果

    返迴轉換後的字串。

  • 函數樣本

    把name值全部轉換成大寫字母。

    • 原始日誌

      name: etl
    • 加工規則

      e_set("str_upper", str_upper(v("name")))
    • 加工結果

      name: etl
      str_upper: ETL

str_title

將所有單詞的第一個字母轉化為大寫,其餘字母均為小寫。

  • 函數格式

    str_title(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被轉換的字串。

  • 返回結果

    返迴轉換後的字串。

  • 函數樣本

    word欄位值中所有單詞的首字母轉成大寫。

    • 原始日誌

      word: this is etl
    • 加工規則

      e_set("str_title", str_title(v("word")))
    • 加工結果

      word: this is etl
      str_title: This Is Etl

str_capitalize

將字串的第一個字母轉化為大寫,其他字母轉化為小寫。

  • 函數格式

    str_capitalize(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被轉換的字串。

  • 返回結果

    返迴轉換後的字串。

  • 函數樣本

    word欄位值中第一個字元轉換為大寫,其他字元轉換為小寫。

    • 原始日誌

      word: this Is MY EAL
    • 加工規則

      e_set("str_capitalize", str_capitalize(v("word")))
    • 加工結果

      word: this Is MY EAL
      str_capitalize: This is my eal

str_lstrip

刪除字串開頭的指定字元。

  • 函數格式

    str_lstrip(value, chars)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被修改的原字串。

    chars

    任意(自動轉為String)

    字串開頭需要刪除的字元集,預設為空白格。

  • 返回結果

    返回修改後的字串。

  • 函數樣本

    • 樣本1:去掉word欄位開頭的星號(*)。

      • 原始日誌

        word: ***this is string
      • 加工規則

        e_set("str_lstrip", str_lstrip(v("word"), "*"))
      • 加工結果

        word: ***this is string
        str_lstrip: this is string
    • 樣本2:刪除word欄位開頭的空格。

      • 原始日誌

        word:     this is string
      • 加工規則

        e_set("str_lstrip", str_lstrip(v("word")))
      • 加工結果

        word:     this is string
        str_lstrip: this is string
    • 樣本3:刪除字元集xy

      • 原始日誌

        lstrip:xy123yx
      • 加工規則

        e_set("str_lstrip", str_lstrip(v("lstrip"),"xy"))
      • 加工結果

        lstrip:xy123yx
        str_lstrip:123yx

str_rstrip

刪除字串結尾的指定字元。

  • 函數格式

    str_rstrip(value, chars)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被修改的原字串。

    chars

    任意(自動轉為String)

    字串結尾需要刪除的字元集,預設為空白格。

  • 返回結果

    返回修改後的字串。

  • 函數樣本

    • 樣本1:去掉word欄位結尾的星號(*)。

      • 原始日誌

        word: this is string*****
      • 加工規則

        e_set("str_rstrip", str_rstrip(v("word"), "*"))
      • 加工結果

        word: this is string*****
        str_rstrip: this is string
    • 樣本2:刪除字元集xy

      • 原始日誌

        word:xy123yx
      • 加工規則

        e_set("str_rstrip", str_rstrip(v("word"), "xy"))
      • 加工結果

        word:xy123yx
        str_rstrip:xy123

str_swapcase

對字串的大小寫字母進行轉換。

  • 函數格式

    str_swapcase(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被轉換的字串。

  • 返回結果

    返迴轉換後的字串。

  • 函數樣本

    • 原始日誌

      name: this is string
    • 加工規則

      e_set("str_swapcase", str_swapcase(v("name")))
    • 加工結果

      name: this is string
      str_swapcase: THIS IS STRING

str_translate

將字串中的指定字元按照對應關係進行替換。

  • 函數格式

    str_translate(value, replace_string, mapping_string)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被替換的原字串。

    replace_string

    任意(自動轉為String)

    需要替換的字元集合。

    mapping_string

    任意(自動轉為String)

    替換後的字元集合。

  • 返回結果

    返回處理後的字串。

  • 函數樣本

    • 原始日誌

      name: I love ETL!!!
    • 加工規則

      e_set("str_translate", str_translate(v("name"), "aeiou", "12345"))
    • 加工結果

      name: I love ETL!!!
      str_translate: I l4v2 ETL!!!

str_endswith

判斷字串是否以指定尾碼結尾。

  • 函數格式

    str_endswith(value, suffix, start, end)
    說明

    該函數為基本變參調用形式,請參見函數調用方式

  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被判斷的原字串。

    suffix

    任意(自動轉為String)

    尾碼結尾規則。該參數可以是一個字串或者是一個元素。

    start

    Number

    字串檢測的起始位置。

    0表示第一個字元,-1表示倒數第一個字元。

    end

    Number

    字串檢測的結束位置。

    0表示第一個字元,-1表示倒數第一個字元。

  • 返回結果

    如果字串以指定尾碼結尾則返回True,否則返回False。

  • 函數樣本

    • 原始日誌

      name: this is endswith!!!
    • 加工規則

      e_set("str_endswith",str_endswith(v("name"), "!"))
    • 加工結果

      name: this is endswith!!!
      str_endswith: True

str_startswith

判斷字串是否以指定字串開頭。

  • 函數格式

    str_startswith(value, prefix, start, end)
    說明

    該函數為基本變參調用形式,請參見函數調用方式

  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被判斷的原字串。

    prefix

    任意(自動轉為String)

    首碼規則。該參數可以是一個字串或者是一個元素。

    start

    Number

    字串檢測的起始位置。

    0表示第一個字元,-1表示倒數第一個字元。

    end

    Number

    字串檢測的結束位置。

    0表示第一個字元,-1表示倒數第一個字元。

  • 返回結果

    如果字串以指定首碼開頭則返回True,否則返回False。

  • 函數樣本

    • 原始日誌

      name: !! this is startwith
    • 加工規則

      e_set("str_startswith",str_startswith(v("name"), "!!"))
    • 加工結果

      name: !! this is startwith
      str_startswith: True

str_find

判斷原字串中是否包含指定的子字串。

  • 函數格式

    str_find(value, str, begin, end)
    說明

    該函數為基本變參調用形式,請參見函數調用方式

  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被尋找的原字串。

    str

    任意(自動轉為String)

    指定尋找的子字串。

    begin

    Number

    開始索引的位置。

    預設為0表示第一個字元,-1表示倒數第一個字元。

    end

    Number

    結束索引的位置。

    預設為字串的長度。0表示第一個字元,-1表示倒數第一個字元。

  • 返回結果

    返回指定子字串在原字串中的位置。如果指定的子字串在原字串中出現多次,只返回第一次出現的子字串的位置。

  • 函數樣本

    • 原始日誌

      name: hello world
    • 加工規則

      e_set("str_find",str_find(v("name"), "h"))
    • 加工結果

      name: hello world
      str_find: 0

str_count

統計字串裡某個字元出現的次數。

  • 函數格式

    str_count(value, sub, start, end)
    說明

    該函數為基本變參調用形式,請參見函數調用方式

  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    被統計的原字串。

    sub

    任意(自動轉為String)

    需要統計個數的字元。

    start

    Number

    字串開始搜尋的位置。

    • 0(預設值):第一個字元。

    • -1:最後一個字元。

    end

    Number

    字串中結束搜尋的位置。

    • 0:第一個字元。

    • -1(預設值):最後一個字元。

  • 返回結果

    返回指定字元出現的次數。

  • 函數樣本

    • 原始日誌

      name: this is really a string
    • 加工規則

      e_set("str_count", str_count(v("name"), "i"))
    • 加工結果

      name: this is really a string
      str_count: 3

str_rfind

尋找字串中指定字元或者字串最後一次出現的位置。

  • 函數格式

    str_rfind(value, substr, beg, end)
    說明

    該函數為基本變參調用形式,請參見函數調用方式

  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    被尋找的原字串。

    substr

    任意(自動轉為String)

    需要尋找的字元。

    beg

    Number

    開始尋找的位置,預設為0。

    end

    Number

    結束尋找的位置,預設為字串的長度。

  • 返回結果

    返回字元或字串最後一次出現的位置。

  • 函數樣本

    • 原始日誌

      name: this is really a string
    • 加工規則

      e_set("str_rfind", str_rfind(v("name"), "i"))
    • 加工結果

      name: this is really a string
      str_rfind: 20

str_split

通過指定分隔字元對字串進行分割。

  • 函數格式

    str_split(value, sep=None, maxsplit=-1)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被分割的原字串。

    sep

    Number

    分隔字元,None表示空格。

    maxsplit

    Number

    最大分裂數。-1表示不限制。

  • 返回結果

    返回處理後的字串。

  • 函數樣本

    按照空格對content進行分隔。

    • 原始日誌

      content: hello world
    • 加工規則

      e_set("str_split", str_split(v("content"), " "))
    • 加工結果

      content: hello world
      str_split: ["hello", "world"]

str_splitlines

通過分行符號對字串進行分割。

  • 函數格式

    str_splitlines(value, keepends)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被分割的原字串。

    keepends

    Boolean

    在輸出結果裡是否去掉分行符號(\r\r\n\n)。預設為False,不包含分行符號,如果為True,則保留分行符號。

  • 返回結果

    返回處理後的列表。

  • 函數樣本

    • 樣本1

      • 原始日誌

        content: ab c\n\nde fg\rkl\r\n
      • 加工規則

        e_set("str_splitlines", str_splitlines(v("content"), False))
      • 加工結果

        content: ab c\n\nde fg\rkl\r\n
        str_splitlines: ['ab c', '', 'de fg', 'kl']
    • 樣本2

      • 原始日誌

        content: ab c\n\nde fg\rkl\r\n
      • 加工規則

        e_set("str_splitlines", str_splitlines(v("content"), True))
      • 加工結果

        content: ab c\n\nde fg\rkl\r\n  
        str_splitlines: ['ab c\n', '\n', 'de fg\r', 'kl\r\n']

str_partition

根據指定的分隔字元將字串從左往右分割為三部分。

  • 函數格式

    str_partition(value, substr)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被分割的字串。

    substr

    任意(自動轉為String)

    指定的分隔字元。

  • 返回結果

    返回分隔後的列表。

  • 函數樣本

    對website按照.從左往右分隔成三部分。

    • 原始日誌

      website: www.aliyun.com
    • 加工規則

      e_set("str_partition", str_partition(v("website"), "."))
    • 加工結果

      website: www.aliyun.com
      str_partition:  ["www", ".", "aliyun.com"]

str_rpartition

根據指定的分隔字元將字串從右往左分割為三部分。

  • 函數格式

    str_rpartition(value, substr)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被分割的原字串。

    substr

    任意(自動轉為String)

    指定的分隔字元。

  • 返回結果

    返回處理後的列表。

  • 函數樣本

    對website按照.從右往左分隔成三部分。

    • 原始日誌

      website: www.aliyun.com
    • 加工規則

      e_set("str_partition", str_rpartition(v("website"), "."))
    • 加工結果

        website: www.aliyun.com
        str_partition: ["www.aliyun", ".", "com"]

str_center

用指定字元將字串填充到指定長度。

  • 函數格式

    str_center(value, width, fillchar)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被修改的原字串。

    width

    Number

    填充後字串的總長度。

    fillchar

    任意(自動轉為String)

    填充字元,預設為空白格。

  • 返回結果

    返回處理後的字串。

    說明

    如果指定的填充後字串長度小於原字串長度則直接返回原字串。

  • 函數樣本

    • 樣本1:使用*輸入鍵台字串。

      • 原始日誌

        center: this is center
      • 加工規則

        e_set("str_center", str_center(v("center"), 40, "*"))
      • 加工結果

        center: this is center
        str_center: *************this is center*************
    • 樣本2:使用空格填充字串。

      • 原始日誌

        center: this is center
      • 加工規則

        e_set("str_center", str_center(v("center"), 40))
      • 加工結果

        center: this is center
        str_center:              this is center 

str_zfill

用字元0從開頭將字串填充至指定長度。

  • 函數格式

    str_zfill(value, width)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被修改的原字串。

    width

    Number

    填充後字串的總長度。

  • 返回結果

    返回處理後的字串。

  • 函數樣本

    • 原始日誌

      center: this is zfill
    • 加工規則

      e_set("str_zfill", str_zfill(v("center"), 40))
    • 加工結果

      center:this is zfill
      str_zfill:000000000000000000000000000this is zfill

str_expandtabs

將字串中的\t轉為空白格。

  • 函數格式

    str_expandtabs(value, tabsize)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被修改的原字串。

    tabsize

    Number

    指定轉換後空格的字元數。

  • 返回結果

    返回處理後的字串。

  • 函數樣本

    • 樣本1:把Logstash中的\t字元轉為空白格。

      • 原始日誌

        logstash: this is\tstring
      • 加工規則

        e_set("str_expandtabs", str_expandtabs(v("logstash")))
      • 加工結果

        logstash: this is\tstring
        str_expandtabs: this is string
    • 樣本2:把center中的\t字元轉為空白格。

      • 原始日誌

        {"center": "this is\tstring"}
      • 加工規則

        e_set("str_expandtabs", str_expandtabs(v("center"), 16))
      • 加工結果

        center: this is\tstring
        str_expandtabs: this is         string

str_ljust

用指定字元將原字串從結尾填充至指定長度。

  • 函數格式

    str_ljust(value, width, fillchar)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被修改的原字串。

    width

    Number

    填充後字串的總長度。

    fillchar

    任意(自動轉為String)

    填充字元,預設為空白格。

  • 返回結果

    返回處理後的字串。

    說明

    如果指定的填充後字串長度小於原字串長度則直接返回原字串。

  • 函數樣本

    • 樣本1

      • 原始日誌

        content: this is ljust
      • 加工規則

        e_set("str_ljust", str_ljust(v("content"), 20, "*"))
      • 加工結果

        content: this is ljust
        str_ljust: this is ljust*******
    • 樣本2

      • 原始日誌

        center: this is ljust
      • 加工規則

        e_set("str_ljust", str_ljust(v("center"), 20,))
      • 加工結果

        center: this is ljust
        str_ljust: this is ljust   
    • 樣本3:width寬度沒有字串長,則直接返回原字串。

      • 原始日誌

        center: this is ljust
      • 加工規則

        e_set("str_ljust", str_ljust(v("center"),10,  "*"))
      • 加工結果

        center: this is ljust
        str_ljust: this is ljust

str_rjust

用指定字元將原字串從開頭填充至指定長度。

  • 函數格式

    str_rjust(value, width, fillchar)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被修改的原字串。

    width

    Number

    填充後字串的總長度。

    fillchar

    任意(自動轉為String)

    填充字元,預設為空白格。

  • 返回結果

    返回處理後的字串。

    說明

    如果指定的填充後字串長度小於原字串長度則直接返回原字串。

  • 函數樣本

    • 原始日誌

      center: this is rjust
    • 加工規則

      e_set("str_rjust", str_rjust(v("center"), 20, "*"))
    • 加工結果

      center: this is rjust
      str_rjust: *******this is rjust

str_zip

將兩個值或運算式的字串進行拆分,然後再合并成一個字串。

  • 函數格式

    str_zip(value1, value2, combine_sep=None, sep=None, quote=None, lparse=None, rparse=None)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value1

    任意(自動轉為String)

    需要被合并的值。

    value2

    任意(自動轉為String)

    需要被合并的值。

    combine_sep

    任意(自動轉為String)

    合并時元素之間的合并標識,預設為#

    sep

    任意(自動轉為String)

    合并後元素之間的分隔字元,僅支援單個字元,預設為,

    quote

    任意(自動轉為String)

    將合并後的元素括起來的字元,當值包含分隔字元時需要使用,預設為"

    lparse

    任意(自動轉為String)

    指定value1中元素之間的分隔字元和引用符,預設分隔符號為,,預設引用符為"。格式為lparse=(',', '"')

    說明

    引用符優先順序高於分隔字元。

    rparse

    任意(自動轉為String)

    指定value2中元素之間的分隔字元和引用符,預設分隔符號為,,預設引用符為"。格式為rparse=(',', '"')

    說明

    引用符優先順序高於分隔字元。

  • 返回結果

    返回合并後的字串。

  • 函數樣本

    • 樣本1

      • 原始日誌

        website: wwww.aliyun.com
        escape_name: o
      • 加工規則

        e_set("combine", str_zip(v("website"), v("escape_name"), combine_sep="@"))
      • 加工結果

        website: wwww.aliyun.com
        escape_name: o
        combine: wwww.aliyun.com@o
    • 樣本2

      • 原始日誌

        website: wwww.aliyun.com
        escape_name: o
      • 加工規則

        e_set("combine", str_zip(v("website"), v("escape_name")))
      • 加工結果

        combine:wwww.aliyun.com#o  
        escape_name:o
        website:wwww.aliyun.com
    • 樣本3:sep的使用。

      • 原始日誌

        f1: a,b,c
        f2: x,y,z
      • 加工規則

        e_set("combine", str_zip(v("f1"), v("f2"), sep="|"))
      • 加工結果

        f1: a,b,c
        f2: x,y,z
        combine: a#x|b#y|c#z
    • 樣本4:quote的使用。

      • 原始日誌

        f1: "a,a", b, "c,c"
        f2: x, "y,y", z
      • 加工規則

        e_set("combine", str_zip(v("f1"), v("f2"), quote='|'))
      • 加工結果

        f1: "a,a", b, "c,c"
        f2: x, "y,y", z
        combine: |a,a#x|,|b#y,y|,|c,c#z|
    • 樣本5:不同長度的值。

      • 原始日誌

        f1: a,b
        f2: x,y,z
      • 加工規則

        e_set("combine", str_zip(v("f1"), v("f2")))
      • 加工結果

        f1: a,b
        f2: x,y,z
        combine: a#x,b#y
    • 樣本6:lparse和rparse的使用。

      • 原始日誌

        f1: a#b#c
        f2: x|y|z
      • 加工規則

        e_set("combine", str_zip(v("f1"), v("f2"), lparse=("#", '"'), rparse=("|", '"')))
      • 加工結果

        f1: a#b#c
        f2: x|y|z
        combine: a#x,b#y,c#z
    • 樣本7:lparse和rparse的使用。

      • 原始日誌

        f1: |a,a|, b, |c,c|
        f2: x, #y,y#, z
      • 加工規則

        e_set("combine", str_zip(v("f1"), v("f2"), lparse=(",", '|'), rparse=(",", '#')))
      • 加工結果

        f1: |a,a|, b, |c,c|
        f2: x, #y,y#, z
        combine: "a,a#x","b#y,y","c,c#z"

str_isalnum

判斷字串是否僅由字母和數字組成。

  • 函數格式

    str_isalnum(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被檢測的字串。

  • 返回結果

    返回True或False。

  • 函數樣本

    • 原始日誌

      content: 13
    • 加工規則

      e_set("str_isalnum", str_isalnum(v("content")))
    • 加工結果

      content: 13
      str_isalnum: True

str_isalpha

判斷字串是否僅由字母組成。

  • 函數格式

    str_isalpha(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被檢測的字串。

  • 返回結果

    返回True或False。

  • 函數樣本

    • 原始日誌

      content: 13
    • 加工規則

      e_set("str_isalpha", str_isalpha(v("content")))
    • 加工結果

      content: 13
      str_isalpha: False

str_isascii

判斷字串是否在ASCII中。

  • 函數格式

    str_isascii(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被檢測的字串。

  • 返回結果

    返回True或False。

  • 函數樣本

    • 原始日誌

      content: asw123
    • 加工規則

      e_set("str_isascii", str_isascii(v("content")))
    • 加工結果

      content: asw123
      str_isascii: True

str_isdecimal

判斷字串是否僅包含十進位字元。

  • 函數格式

    str_isdecimal(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被檢測的字串。

  • 返回結果

    返回True或False。

  • 函數樣本

    • 樣本1

      • 原始日誌

        welcome: 你好
      • 加工規則

        e_set("str_isdecimal", str_isdecimal(v("welcome")))
      • 加工結果

        welcome: 你好
        str_isdecimal: False
    • 樣本2

      • 原始日誌

        num: 123
      • 加工規則

        e_set("str_isdecimal", str_isdecimal(v("num")))
      • 加工結果

        num: 123
        str_isdecimal: True

str_isdigit

判斷字串是否僅由數字組成。

  • 函數格式

    str_isdigit(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被檢測的字串。

  • 返回結果

    返回True或False。

  • 函數樣本

    • 原始日誌

      content: 13
    • 加工規則

      e_set("str_isdigit", str_isdigit(v("content")))
    • 加工結果

      content: 13
      str_isdigit: True

str_isidentifier

判斷字串是否是有效Python標識符,也可以用來判斷變數名是否合法。

  • 函數格式

    str_isidentifier(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被檢測的字串。

  • 返回結果

    返回True或False。

  • 函數樣本

    • 原始日誌

      class: class
    • 加工規則

      e_set("str_isidentifier", str_isidentifier(v("class")))
    • 加工結果

      class: class
      str_isidentifier: True

str_islower

判斷字串是否由小寫字母組成。

  • 函數格式

    str_islower(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被檢測的字串。

  • 返回結果

    返回True或False。

  • 函數樣本

    • 原始日誌

      lower: asds
    • 加工規則

      e_set("str_islower", str_islower(v("lower")))
    • 加工結果

      lower: asds
      str_islower: True

str_isnumeric

判斷字串是否由數字組成。

  • 函數格式

    str_isnumeric(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被檢測的字串。

  • 返回結果

    返回True或False。

  • 函數樣本

    • 原始日誌

      num: 123
    • 加工規則

      e_set("str_isnumeric", str_isnumeric(v("num")))
    • 加工結果

      num: 123
      str_isnumeric: True

str_isprintable

判斷字串中是否所有字元都是可列印字元。

  • 函數格式

    str_isprintable(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被檢測的字串。

  • 返回結果

    返回True或False。

  • 函數樣本

    • 原始日誌

      content: vs;,.as
    • 加工規則

      e_set("str_isprintable",  str_isprintable(v("content")))
    • 加工結果

      content: vs;,.as
      str_isprintable: True

str_isspace

判斷字串是否僅由空白字元組成。

  • 函數格式

    str_isspace(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被檢測的字串。

  • 返回結果

    返回True或False。

  • 函數樣本

    • 原始日誌

      space:  as afsd
    • 加工規則

      e_set("str_isspace", str_isspace(v("space")))
    • 加工結果

      space:  as afsd
      str_isspace: False

str_istitle

判斷字串中所有單詞的拼字首字母是否為大寫,且其他字母為小寫。

  • 函數格式

    str_istitle(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被檢測的字串。

  • 返回結果

    返回True或False。

  • 函數樣本

    • 原始日誌

      title: Alex Is A Boy
    • 加工規則

      e_set("str_istitle", str_istitle(v("title")))
    • 加工結果

      str_istitle:true
      title:Alex Is A Boy

str_isupper

判斷字串中所有的字母是否都為大寫。

  • 函數格式

    str_isupper(value)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    value

    任意(自動轉為String)

    需要被檢測的字串。

  • 返回結果

    返回True或False。

  • 函數樣本

    • 原始日誌

      content: ASSD
    • 加工規則

      e_set("str_isupper", str_isupper(v("content")))
    • 加工結果

      content: ASSD
      str_isupper: True

str_uuid

隨機產生UUID。

  • 函數格式

    str_uuid(lower=True)
  • 參數說明

    參數名稱

    資料類型

    是否必填

    說明

    lower

    Boolean

    產生的UUID中的字母是否是小寫。預設為True表示小寫。

  • 返回結果

    返回UUID碼。

  • 函數樣本

    • 樣本1

      • 原始日誌

        content: I am Iron man
      • 加工規則

        e_set("UUID", str_uuid())
      • 加工結果

        content: I am Iron man
        UUID: e9fcd6b0-b970-11ec-979d-0f7041e65ab8
    • 樣本2

      • 原始日誌

        content: I am Iron man
      • 加工規則

        e_set("UUID", str_uuid(lower=False))
      • 加工結果

        content: I am Iron man
        UUID: 0649211E-B971-11EC-A258-E71F0A2930C5