INSTR-funktionerne (INSTR, INSTRB, INSTRC, INSTR2 og INSTR4) søger i en streng efter en substring ved hjælp af tegn og returnerer positionen i strengen, der er det første tegn i en specificeret forekomst af underlaget. Funktionerne varierer i, hvordan de bestemmer placeringen af det substrat, der skal returneres.
-
INSTR beregner længder ved hjælp af tegn som defineret af inputtegnsættet.
-
INSTRB beregner længder ved hjælp af bytes.
-
INSTRC beregner længder ved hjælp af Unicode-komplette tegn.
-
INSTR2 beregner længder ved hjælp af UCS2-kodepunkter.
-
INSTR4 beregner længder ved hjælp af UCS4-kodepunkter.
Return Value
En ikke-nul INTEGER, når søgningen er vellykket, eller 0 (nul), når den ikke er vellykket.
Syntaks
{INSTR | INSTRB | INSTRC | INSTR2 | INSTR4} (streng, understreng)]
Argumenter
streng
Tekstudtrykket, der skal søges.
understreng
Strengen, der skal søges efter.
position
En ikke-nul INTEGER, der angiver, hvor i streng funktionen starter søgningen. INSTR beregner position ved hjælp af tegn som defineret af inputtegnsættet. INSTRB beregner position ved hjælp af bytes. INSTRC beregner position ved hjælp af Unicode-komplette tegn. INSTR2 beregner position ved hjælp af UCS2-kodepunkter. INSTR4 beregner position ved hjælp af UCS4-kodepunkter.
Når position er negativ, tæller INSTR og søger baglæns fra slutningen af strengen. Standardværdien af position er 1, hvilket betyder, at funktionen begynder at søge i begyndelsen af en streng.
forekomst
En INTEGER, der angiver, hvilken forekomst af streng, funktionen skal søge efter. Værdien af forekomsten skal være positiv. Standardværdierne for forekomst er 1, hvilket betyder, at funktionen søger efter den første forekomst af substring.
Eksempler
Eksempel 7 -127 Brug af tegnposition til at søge fremad for at finde placeringen af en understreng
Følgende eksempel søger i strengen “Corporate Floor”, begyndende med det tredje tegn, efter strengen “eller”. Den returnerer positionen i “Corporate Floor”, hvor den anden forekomst af “eller” begynder.
SHOW INSTR("Corporate Floor","or", 3, 2)14
Eksempel 7-128 Brug af tegnposition til at søge bagud for at finde placeringen af en understreng
I dette næste eksempel tæller funktionen baglæns fra det sidste tegn til det tredje tegn fra slutningen, hvilket er det første “o” i ” Etage”. Funktionen søger derefter bagud for den anden forekomst af “eller” og finder ud af, at denne anden forekomst begynder med det andet tegn i søgestrengen.
SHOW INSTR("Corporate Floor","or", -3, 2)2
Eksempel 7-129 Brug af et dobbelt-byte-tegnsæt til at finde placeringen af en understreng
Dette eksempel forudsætter et databytes-tegnsæt med dobbelt byte.
SHOW INSTRB("Corporate Floor","or",5,2) 27