Funktsioon InStr

Tagastab variandi (Pikk), mis määrab ühe stringi esimese esinemisjuhu asukoha teise stringi sees.

Vt näited

Süntaks

InStr ([start, ] string1, string2 [, compare ] )

Funktsiooni InStr süntaksil on järgmised argumendid.

Argument

Kirjeldus

alusta

Valikuline. Numbriline avaldis, mis seab iga otsingu alguskoha. Puudumisel alustatakse otsingut esimesest märgist. Kui argument start sisaldab tühiväärtust, ilmneb tõrge. Argument start on nõutav, kui määratakse argument compare.

string1

Nõutav. Otsitav stringiavaldis.

string2

Nõutav. Otsitav stringiavaldis.

võrdle

Valikuline. Määrab stringivõrdlus tüübi. Kui argument compare on tühiväärtus, ilmneb tõrge. Kui argument compare puudub, määrab võrdluse tüübi säte Suvandite võrdlemine. Lokaadile eriomaste reeglite kasutamiseks võrdluses määrake sobiv lokaadi identifikaator (LCID - LocaleID).

Näpunäide. :  Rakenduses Access 2010 on avaldisekoosturil IntelliSense, mis näitab, milliseid argumente avaldises kasutada tuleb. 

Sätted

Argumendi compare sätted on järgmised.

Konstant

Väärtus

Kirjeldus

vbUseCompareOption

-1

Teeb lause Suvandite võrdlemine sätte abil võrdluse.

vbBinaryCompare

0

Teeb binaarvõrdluse.

vbTextCompare

1

Teeb tekstilise võrdluse.

vbDatabaseCompare

2

Ainult Microsoft Office Access 2007. Teeb teie andmebaasis oleva teabe põhjal võrdluse.


Tagastusväärtused

Kui

Funktsooni InStr tagastatav väärtus

string1 on nullpikkusega

0

string1 on tühiväärtus

Tühiväärtus

string2 on nullpikkusega

start

string2 on tühiväärtus

Tühiväärtus

string2 ei leita

0

string2 asub string1 sees

Vaste leidmise asukoht

alusta > string2

0


Kommentaarid

Funktsiooni InStrB kasutatakse stringis sisalduvate baitandmetega. Stringi esimese ilmnemisjuhu märgiasukoha teises stringis tagastamise asemel tagastab funktsioon InStrB baidiasukoha.

Näited

Funktsiooni InStr kasutamine avaldises    Funktsiooni InStr saate kasutada kõikjal, kus saate kasutada avaldisi. Näiteks kui soovite leida esimese punkti (.) asukoha IP-aadresse (nimega IPaadress) sisaldaval väljal, saate selle leidmiseks kasutada funktsiooni InStr järgmiselt.

InStr(1,[IPaadress],".")

Funktsioon InStr analüüsib igat väljal IPaadress leiduvat väärtust ja tagastab esimese punkti asukoha. Seega kui IP-aadressi esimene osa on 10., tagastab funktsioon väärtuse 3.

Seejärel saate funktsiooni InStr väljundiga opereerimiseks kasutada muid funktsioone, et ekstraktida punktile eelneva IP-aadressi osa järgnevalt.

Left([IPaadress],(InStr(1,[IPaadress],".")-1))

Eelnevas näites tagastab funktsioon InStr(1,[IPaadress],".") esimese punkti asukoha. Lahutades sellest väärtusest 1, määratakse esimesele punktile eelnevate märkide arv (antud näites on see arv 2). Seejärel ekstraktib funktsioon Left välja IPaadress vasakpoolsest osast määratud arvu märke, tagastades väärtuse 10.

Funktsiooni InStr kasutamine VBA-koodis    

Märkus. : Järgmised näited kujutavad selle funktsiooni kasutamist rakenduse Visual Basic for Applications (VBA) moodulis. Lisateabe saamiseks VBA-ga töötamise kohta valige välja Otsing kõrval kuvatavast ripploendist väärtus Tootearendusmaterjal ja sisestage otsinguväljale üks või mitu sõna.

Järgnevas näites kasutatakse funktsiooni InStr, et tagastada stringi esimese ilmnemisjuhu asukoht teises stringis.

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP" ' String to search in.
SearchChar = "P" ' Search for "P".
' A textual comparison starting at position 4. Returns 6.
MyPos = Instr(4, SearchString, SearchChar, 1)
' A binary comparison starting at position 1. Returns 9.
MyPos = Instr(1, SearchString, SearchChar, 0)
' Comparison is binary by default
' (last argument is omitted).
MyPos = Instr(SearchString, SearchChar) ' Returns 9.
MyPos = Instr(1, SearchString, "W") ' Returns 0.
Täiendage oma oskusi
Tutvuge koolitusmaterjalidega
Kasutage uusi funktsioone enne teisi
Liituge Office Insideri programmiga

Kas sellest teabest oli abi?

Täname tagasiside eest!

Täname tagasiside eest! Tundub, et võiksime teid kokku viia ühega meie Office'i tugiagentidest, kes aitab teil probleemi lahendada.

×