9 Funkcje ciągów znaków

Wszystkie wymienione tutaj funkcje są obsługiwane w:

Funkcje są wymienione bez dodatkowych informacji. Kliknij funkcję, aby zobaczyć pełne szczegóły.

Function Description
ascii Kod ASCII skrajnie lewego znaku wartości.
bitlength Długość wartości w bitach.
bytelength Długość wartości w bajtach.
char Zwraca znak poprzez interpretację wartości jako kodu ASCII.
concat Ciąg znaków powstały w wyniku konkatenacji wartości wskazanych pozycji lub wartości stałych.
insert Wstawia określone znaki lub spacje do ciągu znaków, zaczynając od określonej pozycji w ciągu.
jsonpath Zwraca wynik JSONPath.
left Zwraca skrajnie lewe znaki wartości.
length Długość wartości w znakach.
ltrim Usuwa określone znaki z początku ciągu.
mid Zwraca podciąg o długości N znaków, zaczynając od pozycji znaku określonej przez 'start'.
repeat Powtarza ciąg znaków.
replace Znajduje wzorzec w wartości i zastępuje go wartością zamienną.
right Zwraca skrajnie prawe znaki wartości.
rtrim Usuwa określone znaki z końca ciągu.
trim Usuwa określone znaki z początku i końca ciągu.
xmlxpath Zwraca wynik XML XPath.

Szczegóły funkcji

Kilka ogólnych uwag dotyczących parametrów funkcji:

  • Parametry funkcji są oddzielane przecinkiem
  • Wyrażenia są akceptowane jako parametry
  • Parametry tekstowe muszą być ujęte w podwójny cudzysłów; w przeciwnym razie mogą zostać błędnie zinterpretowane
  • Opcjonalne parametry funkcji (lub części parametrów) są oznaczane przez < >
ascii(value)

Kod ASCII skrajnie lewego znaku wartości.
Obsługiwane typy wartości: String, Text, Log.

Parametr:

  • value - wartość do sprawdzenia

Na przykład wartość taka jak 'Abc' zwróci '65' (kod ASCII dla 'A').

Przykład:

ascii(last(/host/key))
bitlength(value)

Długość wartości w bitach.
Obsługiwane typy wartości: String, Text, Log, Integer.

Parametr:

  • value - wartość do sprawdzenia

Przykład:

bitlength(last(/host/key))
bytelength(value)

Długość wartości w bajtach.
Obsługiwane typy wartości: String, Text, Log, Integer.

Parametr:

  • value - wartość do sprawdzenia

Przykład:

bytelength(last(/host/key))
char(value)

Zwraca znak poprzez interpretację wartości jako kodu ASCII.
Obsługiwane typy wartości: Integer.

Parametr:

  • value — wartość do sprawdzenia

Wartość musi mieścić się w zakresie 0–255. Na przykład wartość taka jak „65” (interpretowana jako kod ASCII) zwróci „A”.

Przykład:

char(last(/host/key))
concat(<value1>,<value2>,...)

Ciąg znaków wynikający z połączenia wartości referencyjnych pozycji lub wartości stałych.
Obsługiwane typy wartości: String, Text, Log, Float, Integer.

Parametr:

  • valueX - wartość zwracana przez jedną z funkcji historii lub wartość stała (ciąg znaków, liczba całkowita lub zmiennoprzecinkowa). Musi zawierać co najmniej dwa parametry.

Na przykład wartość taka jak 'Zab' połączona z 'bix' (stały ciąg znaków) zwróci 'Zabbix'.

Przykłady:

concat(last(/host/key),"bix")
concat("1 min: ",last(/host/system.cpu.load[all,avg1]),", 15 min: ",last(/host/system.cpu.load[all,avg15]))
insert(value,start,length,replacement)

Wstawia określone znaki lub spacje do ciągu znaków, zaczynając od wskazanej pozycji w ciągu.
Obsługiwane typy wartości: String, Text, Log.

Parametry:

  • value - wartość do sprawdzenia;
  • start - pozycja początkowa;
  • length - pozycje do zastąpienia;
  • replacement - ciąg zastępujący.

Na przykład wartość taka jak 'Zabbbix' zostanie zastąpiona przez 'Zabbix', jeśli 'bb' (pozycja początkowa 3, liczba pozycji do zastąpienia 2) zostanie zastąpione przez 'b'.

Przykład:

insert(last(/host/key),3,2,"b")
jsonpath(value,path,<default>)

Zwraca wynik JSONPath.
Obsługiwane typy wartości: String, Text, Log.

Parametry:

  • value - wartość do sprawdzenia;
  • path - ścieżka (musi być ujęta w cudzysłów);
  • default - opcjonalna wartość zapasowa, jeśli zapytanie JSONPath nie zwróci danych. Należy pamiętać, że w przypadku innych błędów zwracane jest niepowodzenie (np. „unsupported construct”).

Przykład:

jsonpath(last(/host/proc.get[zabbix_agentd,,,summary]),"$..size")
left(value,count)

Zwraca skrajnie lewe znaki wartości.
Obsługiwane typy wartości: String, Text, Log.

Parametry:

  • value - wartość do sprawdzenia;
  • count - liczba znaków do zwrócenia.

Na przykład można zwrócić „Zab” z „Zabbix”, określając 3 skrajnie lewe znaki do zwrócenia. Zobacz także right().

Przykład:

left(last(/host/key),3) #zwraca trzy skrajnie lewe znaki
length(value)

Długość wartości w znakach.
Obsługiwane typy wartości: String, Text, Log.

Parametr:

  • value - wartość do sprawdzenia.

Przykłady:

length(last(/host/key)) #długość najnowszej wartości
length(last(/host/key,#3)) #długość trzeciej najnowszej wartości
length(last(/host/key,#1:now-1d)) #długość najnowszej wartości sprzed jednego dnia
ltrim(value,<chars>)

Usuń określone znaki z początku ciągu.
Obsługiwane typy wartości: String, Text, Log.

Parametry:

  • value - wartość do sprawdzenia;
  • chars (opcjonalnie) - określa znaki do usunięcia.

Domyślnie usuwane są białe znaki z początku ciągu (jeśli nie określono opcjonalnych znaków). Zobacz także: rtrim(), trim().

Przykłady:

ltrim(last(/host/key)) #usuń białe znaki z początku ciągu
ltrim(last(/host/key),"Z") #usuń dowolne 'Z' z początku ciągu
ltrim(last(/host/key)," Z") #usuń dowolną spację i 'Z' z początku ciągu
mid(value,start,length)

Zwraca podciąg N znaków, zaczynając od pozycji znaku określonej przez parametr „start”.
Obsługiwane typy wartości: String, Text, Log.

Parametry:

  • value - wartość do sprawdzenia;
  • start - pozycja początkowa podciągu;
  • length - liczba pozycji do zwrócenia w podciągu.

Na przykład możliwe jest zwrócenie „abbi” z wartości takiej jak „Zabbix”, jeśli pozycja początkowa wynosi 2, a liczba pozycji do zwrócenia wynosi 4.

Przykład:

mid(last(/host/key),2,4)="abbi"
repeat(value,count)

Powtórz ciąg znaków.
Obsługiwane typy wartości: String, Text, Log.

Parametry:

  • value - wartość do sprawdzenia;
  • count - liczba powtórzeń.

Przykład:

repeat(last(/host/key),2) #powtórz wartość dwa razy
replace(value,pattern,replacement)

Znajduje wzorzec w wartości i zastępuje go ciągiem replacement. Wszystkie wystąpienia wzorca zostaną zastąpione.
Obsługiwane typy wartości: String, Text, Log.

Parametry:

  • value - wartość do sprawdzenia;
  • pattern - wzorzec do znalezienia;
  • replacement - ciąg, którym zostanie zastąpiony wzorzec.

Przykład:

replace(last(/host/key),"ibb","abb") #zastępuje wszystkie 'ibb' przez 'abb'

Zwraca skrajnie prawe znaki wartości.
Obsługiwane typy wartości: String, Text, Log.

Parametry:

  • value - wartość do sprawdzenia;
  • count - liczba znaków do zwrócenia.

Na przykład można zwrócić „bix” z „Zabbix”, podając 3 skrajnie prawe znaki do zwrócenia. Zobacz także left().

Przykład:

right(last(/host/key),3) #zwraca trzy skrajnie prawe znaki
rtrim(value,<chars>)

Usuwa określone znaki z końca ciągu znaków.
Obsługiwane typy wartości: String, Text, Log.

Parametry:

  • value - wartość do sprawdzenia;
  • chars (opcjonalnie) - określa znaki do usunięcia.

Domyślnie usuwane są białe znaki z prawej strony (jeśli nie określono opcjonalnych znaków). Zobacz także: ltrim(), trim().

Przykłady:

rtrim(last(/host/key)) #usuń białe znaki z końca ciągu znaków
rtrim(last(/host/key),"x") #usuń wszystkie znaki 'x' z końca ciągu znaków
rtrim(last(/host/key),"x ") #usuń wszystkie znaki 'x' i spacje z końca ciągu znaków
trim(value,<chars>)

Usuń określone znaki z początku i końca ciągu znaków.
Obsługiwane typy wartości: String, Text, Log.

Parametry:

  • value - wartość do sprawdzenia;
  • chars (opcjonalnie) - określa znaki do usunięcia.

Domyślnie z obu stron usuwane są białe znaki (jeśli nie określono opcjonalnych znaków). Zobacz także: ltrim(), rtrim().

Przykłady:

trim(last(/host/key)) #usuń białe znaki z początku i końca ciągu znaków
trim(last(/host/key),"_") #usuń '_' z początku i końca ciągu znaków
xmlxpath(value,path,<default>)

Zwraca wynik XML XPath.
Obsługiwane typy wartości: String, Text, Log.

Parametry:

  • value - wartość do sprawdzenia;
  • path - ścieżka (musi być ujęta w cudzysłów);
  • default - opcjonalna wartość zastępcza, jeśli zapytanie XML XPath zwróci pusty zbiór węzłów. Nie zostanie zwrócona, jeśli pusty wynik nie jest zbiorem węzłów (tj. pustym ciągiem). W przypadku innych błędów zwracane jest niepowodzenie (np. „invalid expression”).

Przykład:

xmlxpath(last(/host/xml_result),"/response/error/status")

Zobacz wszystkie obsługiwane funkcje.