# Index – função de script e gráfico

Index() busca uma string para localizar a posição inicial da enésima ocorrência de uma subsequência fornecida. Um terceiro argumento opcional fornece o valor de n, que é 1 se for omitido. Um valor negativo busca a partir do final da string. As posições na string são numeradas de 1 em diante.

Sintaxe:

Index(text, substring[, count])

Tipo de dados de retorno: inteiro

Argumentos:

Argumentos

| Argumento | Descrição |
| --- | --- |
| text | A string original. |
| substring | Uma string de caracteres para pesquisar no text.<br><br>Nota informativaSe a substring não existir no texto, Index retornará 0. |
| count | Define qual ocorrência de substring pesquisar. Por exemplo, um valor de duas pesquisas para a segunda ocorrência. |

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Index.htm)

#### Exemplos e resultados:

| Exemplo | Resultado |
| --- | --- |
| Index( 'abcdefg', 'cd' ) | Retorna 3 |
| Index( 'abcdabcd', 'b', 2) | Retorna 6 (a segunda ocorrência de "b") |
| Index( 'abcdabcd', 'b',-2) | Retorna 2 (a segunda ocorrência de "b" começando do final) |
| `Left(   Date, Index( Date,'-') -1` ) where Date = 1997-07-14 | Retorna 1997 |
| `Mid(   Date, Index( Date, '-', 2 ) -2, 2 )` where Date = 1997-07-14 | Retorna 07 |
| Index('abc', 'x') | Retorna 0 ('x' não existe na string 'abc') |
| Index('abc', 'a', 2) | Retorna 0 (não há uma 2ª ocorrência de 'a') |

Exemplo: Script

```
T1:
Load 
*, 
index(String, 'cd') as Index_CD,               // returns 3  in Index_CD
index(String, 'b') as Index_B,                // returns 2 in Index_B
index(String, 'b', -1) as Index_B2;           // returns 2 or 6 in Index_B2
Load * inline [
String
abcdefg
abcdabcd ]; 									
```