Condividi tramite


Funzione InStr (Visual Basic)

Aggiornamento: novembre 2007

Restituisce un valore integer che specifica la posizione di inizio della prima occorrenza di una stringa in un'altra.

Public Shared Function InStr(_
   ByVal String1 As String, _
   ByVal String2 As String, _
   Optional ByVal Compare As CompareMethod _
) As Integer
' -or-
Public Shared Function InStr(_
   ByVal Start As Integer, _
   ByVal String1 As String, _
   ByVal String2 As String, _
   Optional ByVal Compare As Microsoft.VisualBasic.CompareMethod _
) As Integer

Parametri

  • Start
    Facoltativo. Espressione numerica che imposta la posizione di inizio di ogni ricerca. Se omesso, la ricerca inizierà dal primo carattere. L'indice di inizio è in base 1.

  • String1
    Obbligatorio. Espressione String nella quale viene eseguita la ricerca.

  • String2
    Obbligatorio. Espressione String cercata.

  • Compare
    Facoltativo. Specifica il tipo di confronto tra stringhe. Se Compare viene omesso, il tipo di confronto sarà determinato dall'impostazione di Option Compare.

Impostazioni

Le possibili impostazioni dell'argomento Compare sono:

Costante

Valore

Descrizione

Binary

0

Verrà eseguito un confronto binario.

Text

1

Verrà eseguito un confronto testuale.

Valore restituito

Se

InStr restituirà

String1 è di lunghezza zero o Nothing

0

String2 è di lunghezza zero o Nothing

start

String2 non viene trovato

0

String2 viene trovato all'interno di String1

La posizione di inizio della corrispondenza

Start > String2

0

Eccezioni

Tipo di eccezione

Numero di errore

Condizione

ArgumentException

5

Start < 1.

Se si esegue l'aggiornamento delle applicazioni Visual Basic 6.0 che utilizzano la gestione degli errori non strutturata, vedere la colonna "Numero di errore". È possibile confrontare il numero di errore con la Proprietà Number (oggetto Err). Se possibile, tuttavia, si consiglia di sostituire il controllo dell'errore con la procedura illustrata nella sezione Cenni preliminari sulla gestione strutturata delle eccezioni per Visual Basic.

Note

In genere, la funzione InStr viene utilizzata durante l'analisi delle stringhe.

Nota:

La funzione InStrB delle versioni precedenti di Visual Basic restituisce un numero di byte anziché una posizione del carattere. Viene utilizzata soprattutto per la conversione di stringhe in applicazioni del set di caratteri a byte doppio (DBCS). Tutte le stringhe di Visual Basic 2005 sono in Unicode e InStrB non è più supportato.

Esempio

Nell'esempio riportato di seguito la funzione InStr viene utilizzata per restituire la posizione della prima occorrenza di una stringa in un'altra:

' String to search in.
Dim SearchString As String = "XXpXXpXXPXXP"
' Search for "P".
Dim SearchChar As String = "P"

Dim TestPos As Integer
' A textual comparison starting at position 4. Returns 6.
TestPos = InStr(4, SearchString, SearchChar, CompareMethod.Text)

' A binary comparison starting at position 1. Returns 9.
TestPos = InStr(1, SearchString, SearchChar, CompareMethod.Binary)

' If Option Compare is not set, or set to Binary, return 9.
' If Option Compare is set to Text, returns 3.
TestPos = InStr(SearchString, SearchChar)

' Returns 0.
TestPos = InStr(1, SearchString, "W")

Requisiti

Spazio dei nomi:Microsoft.VisualBasic

**Modulo:**Strings

**Assembly:**Visual Basic Runtime Library (in Microsoft.VisualBasic.dll)

Vedere anche

Concetti

Riepilogo delle modifiche al supporto degli elementi di programmazione

Riferimenti

Funzione InStrRev (Visual Basic)

Istruzione Option Compare

Funzione StrComp (Visual Basic)

ArgumentException

Altre risorse

Stringhe in Visual Basic

Introduzione alle stringhe in Visual Basic