# 문자열 함수

{% hint style="info" %}
PantherFlow는 Panther 버전 1.110부터 오픈 베타로 제공되며, 모든 고객이 사용할 수 있습니다. 버그 보고 및 기능 요청이 있으면 Panther 지원팀에 공유해 주세요.
{% endhint %}

## `strings.cat()`

`strings.cat(str: string, str: string, ... ) -> string`

문자열을 이어 붙입니다.

**예시:**

```kusto
panther_logs.public.aws_alb
| project clientAddr=strings.cat(clientIp, ':', clientPort)
```

## `strings.contains()`

`strings.contains(str: any, substr: string) -> bool`

다음이면 true를 반환합니다. `str` 포함 `substr`. 다음이면 `str` 문자열이 아니면 먼저 문자열로 변환됩니다.

**예시:**

```kusto
panther_logs.public.aws_alb
| project usingMozilla=strings.contains(userAgent, "Mozilla")
```

## `strings.ends_with()`

`strings.ends_with(str: string, postfix: string) -> bool`

다음이면 true를 반환합니다. `str` ends with `postfix`.

**예시:**

```kusto
panther_logs.public.aws_alb
| project usingSHA256=strings.ends_with(sslCipher, "SHA256")
```

## `strings.ilike()`

`strings.ilike(str: any, substr: string) -> bool`

다음이면 true를 반환합니다. `str` 포함 `substr` 대소문자를 구분하지 않는 SQL LIKE 의미를 따릅니다.

**예시:**

```kusto
panther_logs.public.aws_alb
| project usingSHA=strings.ilike(sslCipher, "%sha%")
```

## `strings.join()`

`strings.join(elements: [string], sep: string) -> string`

다음을 반환합니다. `elements` 를 다음으로 연결한 값 `sep` 가 각 요소 사이에 들어갑니다.

**예시:**

```kusto
panther_logs.public.aws_alb
| project same=strings.join(strings.split(domainName, "."), ".")
```

## `strings.len()`

`strings.len(str: any) -> int`

다음의 길이를 반환합니다. `str`. 다음이면 `str` 문자열이 아니면 먼저 문자열로 변환됩니다.

**예시:**

```kusto
panther_logs.public.aws_alb
| project keyLen=strings.len(p_source_file.aws_s3_key)
```

## `strings.like()`

`strings.like(str: any, substr: string) -> bool`

다음이면 true를 반환합니다. `str` 포함 `substr` SQL LIKE 의미를 따릅니다.

**예시:**

```kusto
panther_logs.public.aws_alb
| project usingSHA=strings.like(sslCipher, "%SHA%")
```

## `strings.lower()`

`strings.lower(str: string) -> string`

다음을 반환합니다. `str` 소문자로 변환됩니다.

**예시:**

```kusto
panther_logs.public.aws_alb
| project action=strings.cat(strings.lower(requestHttpMethod), " a letter")
```

## `strings.split()`

`strings.split(str: any, sep: string) -> [string]`

다음의 부분 문자열 목록을 반환합니다. `str` 다음으로 구분된 `sep`.

**예시:**

```kusto
panther_logs.public.aws_alb
| project ip_parts=strings.split(clientIp, ".")
```

## `strings.starts_with()`

`strings.starts_with(str: string, prefix: string) -> bool`

다음이면 true를 반환합니다. `str` starts with `prefix`.

**예시:**

```kusto
panther_logs.public.aws_alb
| project targetingLoadBalancer=strings.starts_with(targetGroupArn, "arn:aws:elasticloadbalancing")
```

## `strings.upper()`

`strings.upper(str: string) -> string`

다음을 반환합니다. `str` 대문자로 변환됩니다.

**예시:**

```kusto
panther_logs.public.aws_alb
| project bigDomain=strings.upper(domainName)
```
