Back to Influxdb

strings.countStr() function

content/flux/v0/stdlib/strings/countstr.md

latest2.9 KB
Original Source
<!------------------------------------------------------------------------------ IMPORTANT: This page was generated from comments in the Flux source code. Any edits made directly to this page will be overwritten the next time the documentation is generated. To make updates to this documentation, update the function comments above the function definition in the Flux source code: https://github.com/influxdata/flux/blob/master/stdlib/strings/strings.flux#L409-L409 Contributing to Flux: https://github.com/influxdata/flux#contributing Fluxdoc syntax: https://github.com/influxdata/flux/blob/master/docs/fluxdoc.md ------------------------------------------------------------------------------->

strings.countStr() counts the number of non-overlapping instances of a substring appears in a string.

Function type signature
js
(substr: string, v: string) => int

{{% caption %}} For more information, see Function type signatures. {{% /caption %}}

Parameters

v

({{< req >}}) String value to search.

substr

({{< req >}}) Substring to count occurrences of.

The function counts only non-overlapping instances of substr.

Examples

Count instances of a substring within a string

js
import "sampledata"
import "strings"

sampledata.string()
    |> map(fn: (r) => ({r with _value: strings.countStr(v: r._value, substr: "p")}))

{{< expand-wrapper >}} {{% expand "View example input and output" %}}

Input data

_time*tag_value
2021-01-01T00:00:00Zt1smpl_g9qczs
2021-01-01T00:00:10Zt1smpl_0mgv9n
2021-01-01T00:00:20Zt1smpl_phw664
2021-01-01T00:00:30Zt1smpl_guvzy4
2021-01-01T00:00:40Zt1smpl_5v3cce
2021-01-01T00:00:50Zt1smpl_s9fmgy
_time*tag_value
2021-01-01T00:00:00Zt2smpl_b5eida
2021-01-01T00:00:10Zt2smpl_eu4oxp
2021-01-01T00:00:20Zt2smpl_5g7tz4
2021-01-01T00:00:30Zt2smpl_sox1ut
2021-01-01T00:00:40Zt2smpl_wfm757
2021-01-01T00:00:50Zt2smpl_dtn2bv

Output data

_time_value*tag
2021-01-01T00:00:00Z1t1
2021-01-01T00:00:10Z1t1
2021-01-01T00:00:20Z2t1
2021-01-01T00:00:30Z1t1
2021-01-01T00:00:40Z1t1
2021-01-01T00:00:50Z1t1
_time_value*tag
2021-01-01T00:00:00Z1t2
2021-01-01T00:00:10Z2t2
2021-01-01T00:00:20Z1t2
2021-01-01T00:00:30Z1t2
2021-01-01T00:00:40Z1t2
2021-01-01T00:00:50Z1t2

{{% /expand %}} {{< /expand-wrapper >}}