# **SEARCH**

返回某个指定的字符串值在字符串中首次出现的位置，用法同[FIND](./FIND.md)函数，查找时不区分大小写。

该函数将从头到尾地检索字符串 **str** ，看它是否含有子串 **search\_value** ：

- 开始检索的位置在字符串的 **start\_index** 处或字符串的开头（没有指定 **start\_index** 时）
- 如果找到一个 **search\_value** ，则返回 **search\_value** 的第一次出现的位置。 **str** 中的字符位置是从 1 开始的
- 如果要检索的字符串值没有出现，则该方法返回 `0` 。查找时不区分大小写

## 语法{#grammar}

SEARCH(**str**, **search\_value**, **\[start\_index]**)

- **str**：需要检索的字符串
- **search\_value**：需要检索的字符串值
- **start\_index**：可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是`1`到`len(str)`。如省略该参数，则将从字符串的首字符开始检索

**示例地址：** [SEARCH](https://demo.succbi.com/v5/bi/search)

## 示例{#example}

1. `SEARCH('abcad','a')` 返回检索字符串首次出现的位置`1`
2. `SEARCH('abcbcd','c',2)` 指定检索位置并返回检索字符串首次出现的位置`3`
3. `SEARCH(E31,'(','2')` 引用单元格，返回`(`的位置`4`
4. `SEARCH([门店销售明细表].[门店].[门店名称],'(','2')` 引用模型字段，返回`(`的位置`4`
