Funcția InStr

Important : Acest articol este tradus automat, consultați exonerarea de răspundere. Versiunea în limba engleză a acestui articol se poate găsi aici pentru referință.

Returnează o valoare variant (lungă) specificând poziția primei ocurențe a unui șir în cadrul altui șir.

Vedeți câteva exemple

Sintaxă

InStr ([start, ] șir1, șir2 [compară ] )

Sintaxa funcției InStr are următoarele argumente:

Argument

Descriere

început

Opțional. Expresie numerică care setează poziție de început pentru fiecare căutare. Dacă se omite, căutare începe de la poziția primului caracter. Dacă începeți conține Null, apare o eroare. Argumentul începe este necesară dacă comparați este specificat.

șir1

Sunt necesare. Expresie șir care este căutată.

șir2

Sunt necesare. Expresie șir căutată.

comparație între

Opțional. Specifică tipul de comparație șiruri. Dacă comparați este Null, apare o eroare. Dacă comparați este omis, opțiuneacomparați setarea determină tipul de comparație. Specificați un LCID valide (LocaleID) se utilizează setările regionale specifice reguli în comparație.

Sfat : În Access 2010, generatorul de expresii are IntelliSense, astfel încât să puteți vedea ce argumente expresia necesită.

Setări

Comparație între argumentul setările sunt:

Constantă

Valoare

Descriere

vbUseCompareOption

-1

Efectuează o comparație utilizând setarea instrucțiunii Opțiunea comparați .

vbBinaryCompare

0

Efectuează o comparație binar.

vbTextCompare

1

Efectuează o comparație textuale.

vbDatabaseCompare

2

Microsoft Office Access 2007 doar. Efectuează o comparație pe baza informațiilor din baza de date.


Returna valori

Dacă s-a activat

Returnează InStr

șir1 este de lungime zero

0

șir1 este Null

Null

șir2 este de lungime zero

început

șir2 este Null

Null

șir2 nu este găsit

0

șir2 se găsesc în șir1

Poziția la care se află potrivire

pornire > șir2

0


Observații

Funcția InStrB este utilizată cu octet datele conținute într-un șir. În loc să reveniți caracter poziția primei ocurențe a unui șir într-altul, InStrB returnează poziția octet.

Exemple

Utilizați funcția InStr într-o expresie    Puteți utiliza InStr oriunde de utilizare a expresiilor. De exemplu, dacă doriți să găsiți poziția primei perioade (.) într-un câmp care conține adresele IP (denumite IPAddress), puteți utiliza InStr pentru a găsi, astfel:

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

Funcția InStr examinează fiecare valoare din câmpul IPAddress și returnează poziția primei perioade. Prin urmare, dacă este prima parte a adresei IP 10., funcția returnează valoarea 3.

Apoi puteți utiliza alte funcții de operare în rezultatul funcției InStr , pentru a extrage porțiunea din adresa IP care precede prima perioadă, cum ar fi astfel:

Left([Ipaddress],(Instr(1,[Ipaddress],".") -1))

În acest exemplu, InStr(1,[IPAddress],".") Returnează poziția primei perioade. Scăderea 1 determină câte caractere puneți prima perioadă, în acest caz, 2. Funcția Left extrage apoi că multe caractere din partea stângă a câmpului IPAddress, returnează valoarea 10.

Utilizarea InStr în codul VBA   

Notă : Exemplele care urmează demonstrează utilizarea acestei funcții într-un modul Visual Basic for Applications (VBA). Pentru mai multe informații despre lucrul cu VBA, selectați Referințe pentru dezvoltatori în lista verticală de lângă Căutare și introduceți unul sau mai mulți termeni în caseta de căutare.

Acest exemplu utilizează funcția InStr pentru a returna poziția primei ocurențe a unui șir într-altul.

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.

Notă : Exonerare de răspundere pentru traducere automată: Acest articol a fost tradus de un sistem computerizat, fără intervenție umană. Microsoft oferă aceste traduceri automate pentru a ajuta utilizatorii vorbitori de alte limbi decât engleza să beneficieze de conținutul despre produsele, serviciile și tehnologiile Microsoft. Pentru că articolul a fost tradus de un computer, poate conține erori de vocabular, sintaxă sau gramatică.

Extindeți-vă competențele
Explorați instruirea
Fiți primul care obține noile caracteristici
Alăturați-vă utilizatorilor Office Insider

Au fost utile aceste informații?

Vă mulțumim pentru feedback!

Vă mulțumim pentru feedback! Se pare că ar fi util să luați legătura cu unul dintre agenții noștri de asistență Office.

×