# SUBSTRING

從給定字串中的指定點擷取子字串。

這是 [`SUBSTR`](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Lakehouse/TransformationFunctions/string/substr.htm) 函數的別名。

## 語法

```
SUBSTRING(STRING, START [, LENGTH])
```

## 引數

#### STRING

類型：`string`

要從中擷取子字串的字串。

#### START

類型： `integer`

子字串的起始索引。

位置從 `1` 開始。負數起始位置會解譯為相對於字串結尾。

#### LENGTH

類型： `integer`

(選用) 子字串的長度。

如果省略，則會傳回起始位置 `START` 之後的字串其餘部分。

## 傳回

類型： `string`

從 `STRING` 傳回長度為 `LENGTH` 且起始位置為 `START` 的子字串。

***

## 範例

| 字串 | 開始 | 長度 | 輸出 |
| --- | --- | --- | --- |
| 哈囉世界 | 1 | 5 | 哈囉 |
| 哈囉世界 | 0 | 4 | `''` |
| 哈囉世界 | -5 | 5 | 世界 |
| 哈囉世界 | 12 | 4 | `''` |
| 哈囉世界 | -12 | 4 | `''` |
| 哈囉世界 | 2 | 3 | ell |
| 哈囉世界 | 3 | -2 | `''` |
| 哈囉世界 | 2 | 14 | ello 世界 |
| 哈囉世界 | 2 |  | 哈囉世界 |
| 哈囉世界 | -3 | 2 | rl |
| `null` | -3 | 2 | `null` |