Funcțiile INSTR (INSTR, INSTRB, INSTRC, INSTR2 și INSTR4) caută un șir pentru un șir folosind caractere și returnează poziția în șirul care este primul caracter al unei specificări apariția subcordului. Funcțiile variază în modul în care determină poziția sub șirului de returnat.
-
INSTR calculează lungimile folosind caractere definite de setul de caractere de intrare.
-
INSTRB calculează lungimile folosind octeți.
-
INSTRC calculează lungimile utilizând caractere complete Unicode.
-
INSTR2 calculează lungimile folosind puncte de cod UCS2.
-
INSTR4 calculează lungimile folosind puncte de cod UCS4.
Valoare returnată
Un INTEGER diferit de zero atunci când căutarea are succes sau 0
(zero) când nu este.
Sintaxă
{INSTR | INSTRB | INSTRC | INSTR2 | INSTR4} (șir, sub șir])
Argumente
șir
Expresia de text de căutat.
sub șir
Șirul de căutat.
poziția
Un INTEGER diferit de zero care indică unde în șir funcția începe căutarea. INSTR calculează poziția utilizând caractere definite de setul de caractere de intrare. INSTRB calculează poziția folosind octeți. INSTRC calculează poziția utilizând caractere complete Unicode. INSTR2 calculează poziția folosind punctele de cod UCS2. INSTR4 calculează poziția utilizând punctele de cod UCS4.
Când poziția este negativă, atunci INSTR contorizează și caută înapoi de la sfârșitul șirului. Valoarea implicită a poziției este 1
, ceea ce înseamnă că funcția începe să caute la începutul șirului.
apariție
Un INTEGER care indică care apariție a șirului ar trebui să funcționeze caută. Valoarea apariției trebuie să fie pozitivă. Valorile implicite ale apariției sunt 1
, ceea ce înseamnă că funcția caută prima apariție a șirului.
Exemple
Exemplul 7 -127 Utilizarea poziției caracterelor pentru a căuta înainte pentru a găsi poziția unui șir
Următorul exemplu caută șirul „Etaj corporativ”, începând cu al treilea caracter, după șirul „sau”. Returnează poziția în „Etaj corporativ” la care începe a doua apariție a „sau„.
SHOW INSTR("Corporate Floor","or", 3, 2)14
Exemplul 7-128 Utilizarea poziției caracterelor pentru a căuta înapoi pentru a găsi poziția unui șir
În acest exemplu următor, funcția contează înapoi de la ultimul caracter la al treilea caracter de la sfârșit, care este primul „o” din „ Podea”. Funcția caută apoi înapoi pentru a doua apariție a „sau” și constată că această a doua apariție începe cu al doilea caracter din șirul de căutare.
SHOW INSTR("Corporate Floor","or", -3, 2)2
Exemplul 7-129 Utilizarea unui set de caractere cu doi octeți pentru a găsi poziția unui șir
Acest exemplu presupune un set de caractere de bază de date cu doi octeți.
SHOW INSTRB("Corporate Floor","or",5,2) 27