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