github.com/crowdsecurity/crowdsec@v1.6.1/pkg/exprhelpers/strings.go (about)

     1  package exprhelpers
     2  
     3  import (
     4  	"strings"
     5  
     6  	log "github.com/sirupsen/logrus"
     7  )
     8  
     9  //Wrappers for stdlib strings function exposed in expr
    10  
    11  func Fields(params ...any) (any, error) {
    12  	return strings.Fields(params[0].(string)), nil
    13  }
    14  
    15  func Index(params ...any) (any, error) {
    16  	return strings.Index(params[0].(string), params[1].(string)), nil
    17  }
    18  
    19  func IndexAny(params ...any) (any, error) {
    20  	return strings.IndexAny(params[0].(string), params[1].(string)), nil
    21  }
    22  
    23  func Join(params ...any) (any, error) {
    24  	return strings.Join(params[0].([]string), params[1].(string)), nil
    25  }
    26  
    27  func Split(params ...any) (any, error) {
    28  	return strings.Split(params[0].(string), params[1].(string)), nil
    29  }
    30  
    31  func SplitAfter(params ...any) (any, error) {
    32  	return strings.SplitAfter(params[0].(string), params[1].(string)), nil
    33  }
    34  
    35  func SplitAfterN(params ...any) (any, error) {
    36  	return strings.SplitAfterN(params[0].(string), params[1].(string), params[2].(int)), nil
    37  }
    38  
    39  func SplitN(params ...any) (any, error) {
    40  	return strings.SplitN(params[0].(string), params[1].(string), params[2].(int)), nil
    41  }
    42  
    43  func Replace(params ...any) (any, error) {
    44  	return strings.Replace(params[0].(string), params[1].(string), params[2].(string), params[3].(int)), nil
    45  }
    46  
    47  func ReplaceAll(params ...any) (any, error) {
    48  	return strings.ReplaceAll(params[0].(string), params[1].(string), params[2].(string)), nil
    49  }
    50  
    51  func Trim(params ...any) (any, error) {
    52  	return strings.Trim(params[0].(string), params[1].(string)), nil
    53  }
    54  
    55  func TrimLeft(params ...any) (any, error) {
    56  	return strings.TrimLeft(params[0].(string), params[1].(string)), nil
    57  }
    58  
    59  func TrimPrefix(params ...any) (any, error) {
    60  	return strings.TrimPrefix(params[0].(string), params[1].(string)), nil
    61  }
    62  
    63  func TrimRight(params ...any) (any, error) {
    64  	return strings.TrimRight(params[0].(string), params[1].(string)), nil
    65  }
    66  
    67  func TrimSpace(params ...any) (any, error) {
    68  	return strings.TrimSpace(params[0].(string)), nil
    69  }
    70  
    71  func TrimSuffix(params ...any) (any, error) {
    72  	return strings.TrimSuffix(params[0].(string), params[1].(string)), nil
    73  }
    74  
    75  func LogInfo(params ...any) (any, error) {
    76  	log.Infof(params[0].(string), params[1:]...)
    77  	return true, nil
    78  }