RichTextBox.Find Metodo

Definizione

Ricerca il testo nel contenuto dell'oggetto RichTextBox.

Overload

Find(Char[])

Cerca nel testo di un controllo RichTextBox la prima istanza di un carattere da un elenco di caratteri.

Find(String)

Cerca una stringa nel testo in un controllo RichTextBox.

Find(Char[], Int32)

Cerca nel testo di un controllo RichTextBox, a partire da un punto specifico, la prima istanza di un carattere da un elenco di caratteri.

Find(String, RichTextBoxFinds)

Cerca nel testo di un controllo RichTextBox una stringa con opzioni specifiche applicate alla ricerca.

Find(Char[], Int32, Int32)

Cerca in un intervallo di testo di un controllo RichTextBox la prima istanza di un carattere da un elenco di caratteri.

Find(String, Int32, RichTextBoxFinds)

Cerca nel testo di un controllo RichTextBox una stringa in una posizione specifica all'interno del controllo e con opzioni specifiche applicate alla ricerca.

Find(String, Int32, Int32, RichTextBoxFinds)

Cerca nel testo in un controllo RichTextBox una stringa all’interno di un intervallo di testo nel controllo e con opzioni specifiche applicate alla ricerca.

Find(Char[])

Cerca nel testo di un controllo RichTextBox la prima istanza di un carattere da un elenco di caratteri.

public:
 int Find(cli::array <char> ^ characterSet);
public int Find (char[] characterSet);
member this.Find : char[] -> int
Public Function Find (characterSet As Char()) As Integer

Parametri

characterSet
Char[]

Matrice di caratteri da ricercare.

Restituisce

Posizione all'interno del controllo dove sono stati trovati i caratteri di ricerca oppure il valore -1, se i caratteri di ricerca non sono stati trovati o se un gruppo di caratteri di ricerca vuoto è specificato nel parametro char.

Esempio

L'esempio di codice seguente cerca il contenuto di un RichTextBox oggetto per i caratteri passati al metodo nel text parametro. Se il contenuto della text matrice viene trovato in RichTextBox, il metodo restituisce l'indice del valore trovato; in caso contrario, restituisce -1. L'esempio richiede che questo metodo venga inserito nella classe di un Form che contiene un controllo denominato e un RichTextBoxButton controllo, denominato richTextBox1button1, connesso al Click gestore eventi definito nell'esempio.

private:
   void button1_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      array<Char>^temp1 = {'D','e','l','t','a'};
      MessageBox::Show( FindMyText( temp1 ).ToString() );
   }

public:
   int FindMyText( array<Char>^text )
   {
      // Initialize the return value to false by default.
      int returnValue = -1;

      // Ensure that a search string has been specified and a valid start point.
      if ( text->Length > 0 )
      {
         // Obtain the location of the first character found in the control
         // that matches any of the characters in the char array.
         int indexToText = richTextBox1->Find( text );

         // Determine whether the text was found in richTextBox1.
         if ( indexToText >= 0 )
         {
            // Return the location of the character.
            returnValue = indexToText;
         }
      }

      return returnValue;
   }
private void button1_Click(object sender, System.EventArgs e)
{
    MessageBox.Show(FindMyText(new char[]{'D','e','l','t','a'}).ToString());
}

public int FindMyText(char[] text)
{
    // Initialize the return value to false by default.
    int returnValue = -1;

    // Ensure that a search string has been specified and a valid start point.
    if (text.Length > 0) 
    {
        // Obtain the location of the first character found in the control
        // that matches any of the characters in the char array.
        int indexToText = richTextBox1.Find(text);
        // Determine whether the text was found in richTextBox1.
        if(indexToText >= 0)
        {
            // Return the location of the character.
            returnValue = indexToText;
        }
    }

    return returnValue;
}
Private Sub button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles button1.Click
    MessageBox.Show(FindMyText(New Char() {"B"c, "r"c, "a"c, "v"c, "o"c}).ToString())
End Sub


Public Function FindMyText(ByVal [text]() As Char) As Integer
    ' Initialize the return value to false by default.
    Dim returnValue As Integer = -1

    ' Ensure that a search string has been specified and a valid start point.
    If [text].Length > 0 Then
        ' Obtain the location of the first character found in the control
        ' that matches any of the characters in the char array.
        Dim indexToText As Integer = richTextBox1.Find([text])
        ' Determine whether the text was found in richTextBox1.
        If indexToText >= 0 Then
            ' Return the location of the character.
            returnValue = indexToText
        End If
    End If

    Return returnValue
End Function

Commenti

Questa versione del Find metodo cerca la prima istanza di un carattere da un elenco di caratteri specificati nel characterSet parametro e restituisce la posizione del carattere. Ad esempio, si passa una matrice di caratteri contenente il carattere 'Q'. Se il controllo contiene il testo "The Quick Brown Fox", il Find metodo restituirà il valore di quattro. Un carattere maiuscolo e un carattere minuscolo sono considerati valori diversi nella ricerca.

Se la proprietà restituisce un valore negativo, i caratteri da cercare non sono stati trovati all'interno del contenuto del controllo. È possibile usare questo metodo per cercare un gruppo di caratteri all'interno del controllo. Questa versione del Find metodo richiede che l'intero documento contenuto nel controllo venga cercato per i caratteri. Se viene trovato un carattere dall'elenco di caratteri fornito nel parametro del characterSet metodo, il valore restituito da questo metodo è un indice in base zero della posizione del carattere nel controllo. Uno spazio viene considerato un carattere dal metodo quando si determina la posizione di un carattere.

Si applica a

Find(String)

Cerca una stringa nel testo in un controllo RichTextBox.

public:
 int Find(System::String ^ str);
public int Find (string str);
member this.Find : string -> int
Public Function Find (str As String) As Integer

Parametri

str
String

Testo da individuare nel controllo.

Restituisce

Il percorso all'interno del controllo dove è stato trovato il testo di ricerca oppure il valore -1, se la stringa di ricerca non è stata trovata o se una stringa di ricerca vuota è specificata nel parametro str.

Esempio

L'esempio di codice seguente cerca l'intero contenuto di un oggetto per la prima istanza di una RichTextBox stringa di ricerca passata al parametro di testo del metodo. Se la stringa di ricerca viene trovata in RichTextBox, il metodo restituisce un valore di true e evidenzia il testo di ricerca, altrimenti restituisce false. L'esempio richiede che questo metodo venga inserito nella classe di un Form oggetto contenente un RichTextBox oggetto denominato richTextBox1.

public:
   bool FindMyText( String^ text )
   {
      // Initialize the return value to false by default.
      bool returnValue = false;
      
      // Ensure a search string has been specified.
      if ( text->Length > 0 )
      {
         // Obtain the location of the search string in richTextBox1.
         int indexToText = richTextBox1->Find( text );
         // Determine whether the text was found in richTextBox1.
         if ( indexToText >= 0 )
         {
            returnValue = true;
         }
      }

      return returnValue;
   }
public bool FindMyText(string text)
{
   // Initialize the return value to false by default.
   bool returnValue = false;

   // Ensure a search string has been specified.
   if (text.Length > 0) 
   {
      // Obtain the location of the search string in richTextBox1.
      int indexToText = richTextBox1.Find(text);
      // Determine whether the text was found in richTextBox1.
      if(indexToText >= 0)
      {
         returnValue = true;
      }
   }

   return returnValue;
}
Public Function FindMyText(text As String) As Boolean
    ' Initialize the return value to false by default.
    Dim returnValue As Boolean = False
    
    ' Ensure a search string has been specified.
    If text.Length > 0 Then
        ' Obtain the location of the search string in richTextBox1.
        Dim indexToText As Integer = richTextBox1.Find(text)
        ' Determine whether the text was found in richTextBox1.
        If indexToText >= 0 Then
            returnValue = True
        End If
    End If
    
    Return returnValue
End Function

Commenti

Il Find metodo cerca il testo specificato nel str parametro e restituisce la posizione del primo carattere all'interno del controllo. Se la proprietà restituisce un valore negativo, la stringa di testo da cercare non è stata trovata all'interno del contenuto del controllo. È possibile usare questo metodo per creare funzionalità di ricerca che possono essere fornite all'utente del controllo. È anche possibile usare questo metodo per cercare il testo da sostituire con un formato specifico. Ad esempio, se l'utente ha immesso date nel controllo, è possibile usare il Find metodo per cercare tutte le date nel documento e sostituirle con il formato appropriato prima di usare il SaveFile metodo del controllo.

Nota

I Find metodi che accettano un string oggetto come parametro non possono trovare testo contenuto in più righe di testo all'interno RichTextBoxdi . L'esecuzione di tale ricerca restituirà un valore negativo (-1).

Si applica a

Find(Char[], Int32)

Cerca nel testo di un controllo RichTextBox, a partire da un punto specifico, la prima istanza di un carattere da un elenco di caratteri.

public:
 int Find(cli::array <char> ^ characterSet, int start);
public int Find (char[] characterSet, int start);
member this.Find : char[] * int -> int
Public Function Find (characterSet As Char(), start As Integer) As Integer

Parametri

characterSet
Char[]

Matrice di caratteri da ricercare.

start
Int32

Posizione nel testo del controllo nella quale avviare la ricerca.

Restituisce

Posizione all'interno del controllo in cui vengono trovati i caratteri di ricerca.

Esempio

L'esempio di codice seguente cerca il contenuto di un RichTextBox oggetto per i caratteri passati al metodo nel text parametro. La ricerca inizia dalla posizione all'interno RichTextBox del parametro specificato dal startFindMyText metodo . Se il contenuto della matrice di testo viene trovato in RichTextBox, il metodo restituisce l'indice del valore trovato. In caso contrario, restituisce -1. L'esempio richiede che questo metodo venga inserito nella classe di un Form che contiene un controllo denominato e un RichTextBoxButton controllo denominato richTextBox1button1 connesso al Click gestore eventi definito nell'esempio.

private:
   void button1_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      array<Char>^temp0 = {'B','r','a','v','o'};
      MessageBox::Show( FindMyText( temp0, 5 ).ToString() );
   }

public:
   int FindMyText( array<Char>^text, int start )
   {
      // Initialize the return value to false by default.
      int returnValue = -1;

      // Ensure that a valid char array has been specified and a valid start point.
      if ( text->Length > 0 && start >= 0 )
      {
         // Obtain the location of the first character found in the control
         // that matches any of the characters in the char array.
         int indexToText = richTextBox1->Find( text, start );

         // Determine whether any of the chars are found in richTextBox1.
         if ( indexToText >= 0 )
         {
            // Return the location of the character.
            returnValue = indexToText;
         }
      }

      return returnValue;
   }
private void button1_Click(object sender, System.EventArgs e)
{
    MessageBox.Show(FindMyText(new char[]{'B','r','a','v','o'}, 5).ToString());
}

public int FindMyText(char[] text, int start)
{
    // Initialize the return value to false by default.
    int returnValue = -1;

    // Ensure that a valid char array has been specified and a valid start point.
    if (text.Length > 0 && start >= 0) 
    {
        // Obtain the location of the first character found in the control
        // that matches any of the characters in the char array.
        int indexToText = richTextBox1.Find(text, start);
        // Determine whether any of the chars are found in richTextBox1.
        if(indexToText >= 0)
        {
            // Return the location of the character.
            returnValue = indexToText;
        }
    }

    return returnValue;
}
Private Sub button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles button1.Click
    MessageBox.Show(FindMyText(New Char() {"B"c, "r"c, "a"c, "v"c, "o"c}, 5).ToString())
End Sub


Public Function FindMyText(ByVal text() As Char, ByVal start As Integer) As Integer
    ' Initialize the return value to false by default.
    Dim returnValue As Integer = -1

    ' Ensure that a valid char array has been specified and a valid start point.
    If [text].Length > 0 And start >= 0 Then
        ' Obtain the location of the first character found in the control
        ' that matches any of the characters in the char array.
        Dim indexToText As Integer = richTextBox1.Find([text], start)
        ' Determine whether any of the chars are found in richTextBox1.
        If indexToText >= 0 Then
            ' Return the location of the character.
            returnValue = indexToText
        End If
    End If

    Return returnValue
End Function

Commenti

Questa versione del Find metodo cerca la prima istanza di un carattere da un elenco di caratteri specificati nel characterSet parametro e restituisce la posizione del carattere. Ad esempio, si passa una matrice di caratteri contenente il carattere 'Q'. Se il controllo contiene il testo "The Quick Brown Fox", il Find metodo restituirà il valore di quattro. Un carattere maiuscolo e un carattere minuscolo sono considerati valori diversi nella ricerca.

Se la proprietà restituisce un valore negativo, i caratteri da cercare non sono stati trovati all'interno del contenuto del controllo. È possibile usare questo metodo per cercare un gruppo di caratteri all'interno del controllo. Se viene trovato un carattere dall'elenco di caratteri fornito nel parametro del characterSet metodo, il valore restituito da questo metodo è un indice in base zero della posizione del carattere nel controllo. Uno spazio viene considerato un carattere dal metodo quando si determina la posizione di un carattere.

Questa versione del metodo consente di cercare un set di Find caratteri da una posizione iniziale specificata all'interno del testo del controllo specificando un valore per il start parametro. Un valore pari a zero indica che la ricerca deve iniziare dall'inizio del documento del controllo. È possibile usare questa versione del Find metodo per restringere la ricerca per evitare il testo già noto non contiene i caratteri specificati che si sta cercando o non sono importanti nella ricerca.

Si applica a

Find(String, RichTextBoxFinds)

Cerca nel testo di un controllo RichTextBox una stringa con opzioni specifiche applicate alla ricerca.

public:
 int Find(System::String ^ str, System::Windows::Forms::RichTextBoxFinds options);
public int Find (string str, System.Windows.Forms.RichTextBoxFinds options);
member this.Find : string * System.Windows.Forms.RichTextBoxFinds -> int
Public Function Find (str As String, options As RichTextBoxFinds) As Integer

Parametri

str
String

Testo da individuare nel controllo.

options
RichTextBoxFinds

Combinazione bit per bit dei valori di RichTextBoxFinds.

Restituisce

Posizione all'interno del controllo in cui è stato trovato il testo di ricerca.

Esempio

L'esempio di codice seguente cerca l'intero contenuto di un oggetto per la prima istanza di una RichTextBox stringa di ricerca passata al parametro di testo del metodo. Se la stringa di ricerca viene trovata in RichTextBox, il metodo restituisce un valore di true e evidenzia il testo; in caso contrario, restituisce false. L'esempio specifica anche le opzioni nella ricerca in modo che corrispondano al caso della stringa di ricerca specificata. L'esempio richiede che questo metodo venga inserito nella classe di un Form oggetto contenente un RichTextBox oggetto denominato richTextBox1.

public:
   bool FindMyText( String^ text )
   {
      // Initialize the return value to false by default.
      bool returnValue = false;
      
      // Ensure a search string has been specified.
      if ( text->Length > 0 )
      {
         // Obtain the location of the search string in richTextBox1.
         int indexToText = richTextBox1->Find( text, RichTextBoxFinds::MatchCase );
         // Determine if the text was found in richTextBox1.
         if ( indexToText >= 0 )
         {
            returnValue = true;
         }
      }

      return returnValue;
   }
public bool FindMyText(string text)
{
   // Initialize the return value to false by default.
   bool returnValue = false;

   // Ensure a search string has been specified.
   if (text.Length > 0) 
   {
      // Obtain the location of the search string in richTextBox1.
      int indexToText = richTextBox1.Find(text, RichTextBoxFinds.MatchCase);
      // Determine if the text was found in richTextBox1.
      if(indexToText >= 0)
      {
         returnValue = true;
      }
   }

   return returnValue;
}
Public Function FindMyText(text As String) As Boolean
    ' Initialize the return value to false by default.
    Dim returnValue As Boolean = False
    
    ' Ensure a search string has been specified.
    If text.Length > 0 Then
        ' Obtain the location of the search string in richTextBox1.
        Dim indexToText As Integer = richTextBox1.Find(text, RichTextBoxFinds.MatchCase)
        ' Determine if the text was found in richTextBox1.
        If indexToText >= 0 Then
            returnValue = True
        End If
    End If
    
    Return returnValue
End Function

Commenti

Il Find metodo cerca il testo specificato nel str parametro e restituisce la posizione del primo carattere all'interno del controllo. Se la proprietà restituisce un valore negativo, la stringa di testo da cercare non è stata trovata all'interno del contenuto del controllo. È possibile usare questo metodo per creare funzionalità di ricerca che possono essere fornite all'utente del controllo. È anche possibile usare questo metodo per cercare il testo da sostituire con un formato specifico. Ad esempio, se l'utente ha immesso date nel controllo, è possibile usare il Find metodo per cercare tutte le date nel documento e sostituirle con il formato appropriato prima di usare il SaveFile metodo del controllo.

Con questa versione del Find metodo è possibile specificare le opzioni che consentono di espandere o restringere la ricerca. È possibile specificare le opzioni che consentono di trovare la corrispondenza tra maiuscole e minuscole della parola di ricerca o di cercare intere parole anziché parole parziali. Specificando l'enumerazione RichTextBoxFinds.Reverse nel options parametro, è possibile cercare il testo dalla parte inferiore del documento all'inizio anziché il metodo di ricerca predefinito in basso.

Nota

I Find metodi che accettano un string oggetto come parametro non possono trovare testo contenuto in più righe di testo all'interno RichTextBoxdi . L'esecuzione di tale ricerca restituirà un valore negativo (-1).

Si applica a

Find(Char[], Int32, Int32)

Cerca in un intervallo di testo di un controllo RichTextBox la prima istanza di un carattere da un elenco di caratteri.

public:
 int Find(cli::array <char> ^ characterSet, int start, int end);
public int Find (char[] characterSet, int start, int end);
member this.Find : char[] * int * int -> int
Public Function Find (characterSet As Char(), start As Integer, end As Integer) As Integer

Parametri

characterSet
Char[]

Matrice di caratteri da ricercare.

start
Int32

Posizione nel testo del controllo nella quale avviare la ricerca.

end
Int32

Posizione nel testo del controllo nella quale terminare la ricerca.

Restituisce

Posizione all'interno del controllo in cui vengono trovati i caratteri di ricerca.

Eccezioni

characterSet è null.

startè minore di 0 o maggiore della lunghezza del testo nel controllo.

Commenti

Questa versione del Find metodo cerca la prima istanza di un carattere da un elenco di caratteri specificati nel characterSet parametro e restituisce la posizione del carattere. Ad esempio, si passa una matrice di caratteri contenente il carattere 'Q'. Se il controllo contiene il testo "The Quick Brown Fox", il Find metodo restituirà il valore di quattro. Un carattere maiuscolo e un carattere minuscolo sono considerati valori diversi nella ricerca.

Se la proprietà restituisce un valore negativo, i caratteri da cercare non sono stati trovati all'interno del contenuto del controllo. È possibile usare questo metodo per cercare un gruppo di caratteri all'interno del controllo. Se viene trovato un carattere dall'elenco di caratteri fornito nel parametro del characterSet metodo, il valore restituito da questo metodo è un indice in base zero della posizione del carattere nel controllo. Uno spazio viene considerato un carattere dal metodo quando si determina la posizione di un carattere.

Questa versione del Find metodo consente di cercare un set di caratteri da un intervallo di testo nel controllo specificando un valore per i start parametri e end . Un valore pari a zero per il start parametro indica che la ricerca deve iniziare dall'inizio del documento del controllo. Un valore -1 per il end parametro indica che la ricerca deve terminare alla fine del testo all'interno del controllo. È possibile usare questa versione del metodo per restringere la Find ricerca a un intervallo specifico di testo all'interno del controllo per evitare di cercare aree del documento che non sono importanti per le esigenze dell'applicazione.

Si applica a

Find(String, Int32, RichTextBoxFinds)

Cerca nel testo di un controllo RichTextBox una stringa in una posizione specifica all'interno del controllo e con opzioni specifiche applicate alla ricerca.

public:
 int Find(System::String ^ str, int start, System::Windows::Forms::RichTextBoxFinds options);
public int Find (string str, int start, System.Windows.Forms.RichTextBoxFinds options);
member this.Find : string * int * System.Windows.Forms.RichTextBoxFinds -> int
Public Function Find (str As String, start As Integer, options As RichTextBoxFinds) As Integer

Parametri

str
String

Testo da individuare nel controllo.

start
Int32

Posizione nel testo del controllo nella quale avviare la ricerca.

options
RichTextBoxFinds

Combinazione bit per bit dei valori di RichTextBoxFinds.

Restituisce

Posizione all'interno del controllo in cui è stato trovato il testo di ricerca.

Esempio

Nell'esempio di codice seguente viene eseguita la ricerca dell'intero contenuto di un RichTextBox oggetto per la prima istanza di una stringa di ricerca passata nel parametro text del metodo . Il percorso iniziale della ricerca viene specificato dal parametro start del metodo . Se la stringa di ricerca viene trovata in RichTextBox, il metodo restituisce la posizione di indice del primo carattere del testo trovato ed evidenzia il testo trovato; in caso contrario, restituisce il valore -1. Nell'esempio vengono inoltre specificate le opzioni nella ricerca in modo che corrispondano al caso della stringa di ricerca specificata. L'esempio richiede che questo metodo venga inserito nella classe di un Form oggetto contenente un RichTextBox oggetto denominato richTextBox1. È possibile usare questo esempio per eseguire un tipo di operazione "Trova successivo". Dopo aver trovato un'istanza del testo di ricerca, è possibile trovare altre istanze del testo modificando il valore del start parametro in modo da cercare in una posizione oltre la posizione della corrispondenza corrente.

public:
   int FindMyText( String^ text, int start )
   {
      // Initialize the return value to false by default.
      int returnValue = -1;
      
      // Ensure that a search string has been specified and a valid start point.
      if ( text->Length > 0 && start >= 0 )
      {
         // Obtain the location of the search string in richTextBox1.
         int indexToText = richTextBox1->Find( text, start, RichTextBoxFinds::MatchCase );
         // Determine whether the text was found in richTextBox1.
         if ( indexToText >= 0 )
         {
            returnValue = indexToText;
         }
      }

      return returnValue;
   }
public int FindMyText(string text, int start)
{
   // Initialize the return value to false by default.
   int returnValue = -1;

   // Ensure that a search string has been specified and a valid start point.
   if (text.Length > 0 && start >= 0) 
   {
      // Obtain the location of the search string in richTextBox1.
      int indexToText = richTextBox1.Find(text, start, RichTextBoxFinds.MatchCase);
      // Determine whether the text was found in richTextBox1.
      if(indexToText >= 0)
      {
         returnValue = indexToText;
      }
   }

   return returnValue;
}
Public Function FindMyText(text As String, start As Integer) As Integer
    ' Initialize the return value to false by default.
    Dim returnValue As Integer = - 1
    
    ' Ensure that a search string has been specified and a valid start point.
    If text.Length > 0 And start >= 0 Then
        ' Obtain the location of the search string in richTextBox1.
        Dim indexToText As Integer = richTextBox1.Find(text, start, _
            RichTextBoxFinds.MatchCase)
        ' Determine whether the text was found in richTextBox1.
        If indexToText >= 0 Then
            returnValue = indexToText
        End If
    End If
    
    Return returnValue
End Function

Commenti

Il Find metodo cerca il testo specificato nel str parametro e restituisce la posizione del primo carattere della stringa di ricerca all'interno del controllo. Se la proprietà restituisce un valore negativo, la stringa di testo cercata non è stata trovata all'interno del contenuto del controllo. È possibile usare questo metodo per creare funzionalità di ricerca che possono essere fornite all'utente del controllo. È anche possibile utilizzare questo metodo per cercare il testo da sostituire con un formato specifico. Ad esempio, se l'utente ha immesso date nel controllo , è possibile utilizzare il Find metodo per cercare tutte le date nel documento e sostituirle con il formato appropriato prima di utilizzare il SaveFile metodo del controllo .

Con questa versione del Find metodo, è possibile specificare le opzioni che consentono di espandere o restringere la ricerca. È possibile specificare opzioni che consentono di trovare le maiuscole e minuscole della parola di ricerca o di cercare intere parole anziché parole parziali. Specificando l'enumerazione RichTextBoxFinds.Reverse nel options parametro , è possibile cercare testo dalla parte inferiore del documento all'inizio anziché dal metodo di ricerca superiore al basso predefinito. Questa versione del Find metodo consente inoltre di restringere la ricerca del testo selezionando una posizione iniziale specifica all'interno del testo del controllo. Questa funzionalità consente di evitare il testo che potrebbe essere già stato cercato o in cui il testo specifico che si sta cercando non esiste. Quando il RichTextBoxFinds.Reverse valore viene specificato nel options parametro , il valore del start parametro indica la posizione in cui terminerà la ricerca inversa perché la ricerca inizierà nella parte inferiore del documento quando si usa questa versione del Find metodo .

Nota

I Find metodi che accettano come string parametro non possono trovare testo contenuto in più righe di testo all'interno di RichTextBox. L'esecuzione di tale ricerca restituirà un valore negativo (-1).

Si applica a

Find(String, Int32, Int32, RichTextBoxFinds)

Cerca nel testo in un controllo RichTextBox una stringa all’interno di un intervallo di testo nel controllo e con opzioni specifiche applicate alla ricerca.

public:
 int Find(System::String ^ str, int start, int end, System::Windows::Forms::RichTextBoxFinds options);
public int Find (string str, int start, int end, System.Windows.Forms.RichTextBoxFinds options);
member this.Find : string * int * int * System.Windows.Forms.RichTextBoxFinds -> int
Public Function Find (str As String, start As Integer, end As Integer, options As RichTextBoxFinds) As Integer

Parametri

str
String

Testo da individuare nel controllo.

start
Int32

Posizione nel testo del controllo nella quale avviare la ricerca.

end
Int32

Posizione nel testo del controllo nella quale terminare la ricerca. Il valore deve essere uguale a uno negativo (-1) oppure maggiore di o uguale al parametro start.

options
RichTextBoxFinds

Combinazione bit per bit dei valori di RichTextBoxFinds.

Restituisce

Posizione all'interno del controllo in cui è stato trovato il testo di ricerca.

Eccezioni

Il valore del parametro str era null.

Il parametro start era minore di zero

-oppure-

Il parametro end era minore del parametro start.

Esempio

Nell'esempio di codice seguente viene eseguita la ricerca di una sezione di testo in un RichTextBox oggetto per la prima istanza di una stringa di ricerca passata nel searchText parametro del metodo . L'intervallo in cui cercare il testo all'interno del controllo viene specificato dai searchStart parametri e searchEnd del metodo . Se la stringa di ricerca viene trovata in RichTextBox, il metodo restituisce la posizione di indice del primo carattere del testo trovato ed evidenzia il testo trovato; in caso contrario, restituisce il valore -1. Nell'esempio viene inoltre utilizzato il options parametro del Find metodo per specificare che il testo trovato deve corrispondere alla distinzione tra maiuscole e minuscole della stringa di ricerca. L'esempio richiede che questo metodo venga inserito nella classe di un Form oggetto contenente un RichTextBox controllo denominato richTextBox1. Dopo aver trovato la prima istanza della stringa di ricerca, è possibile usare questo esempio per trovare altre istanze nel testo.

public:
   int FindMyText( String^ searchText, int searchStart, int searchEnd )
   {
      // Initialize the return value to false by default.
      int returnValue = -1;

      // Ensure that a search string and a valid starting point are specified.
      if ( searchText->Length > 0 && searchStart >= 0 )
      {
         // Ensure that a valid ending value is provided.
         if ( searchEnd > searchStart || searchEnd == -1 )
         {
            // Obtain the location of the search string in richTextBox1.
            int indexToText = richTextBox1->Find( searchText, searchStart, searchEnd, RichTextBoxFinds::MatchCase );

            // Determine whether the text was found in richTextBox1.
            if ( indexToText >= 0 )
            {
               // Return the index to the specified search text.
               returnValue = indexToText;
            }
         }
      }

      return returnValue;
   }
public int FindMyText(string searchText, int searchStart, int searchEnd)
{
    // Initialize the return value to false by default.
    int returnValue = -1;

    // Ensure that a search string and a valid starting point are specified.
    if (searchText.Length > 0 && searchStart >= 0) 
    {
        // Ensure that a valid ending value is provided.
        if (searchEnd > searchStart || searchEnd == -1)
        {	
            // Obtain the location of the search string in richTextBox1.
            int indexToText = richTextBox1.Find(searchText, searchStart, searchEnd, RichTextBoxFinds.MatchCase);
            // Determine whether the text was found in richTextBox1.
            if(indexToText >= 0)
            {
                // Return the index to the specified search text.
                returnValue = indexToText;
            }
        }
    }

    return returnValue;
}
Public Function FindMyText(ByVal searchText As String, ByVal searchStart As Integer, ByVal searchEnd As Integer) As Integer
    ' Initialize the return value to false by default.
    Dim returnValue As Integer = -1

    ' Ensure that a search string and a valid starting point are specified.
    If searchText.Length > 0 And searchStart >= 0 Then
        ' Ensure that a valid ending value is provided.
        If searchEnd > searchStart Or searchEnd = -1 Then
            ' Obtain the location of the search string in richTextBox1.
        Dim indexToText As Integer = richTextBox1.Find(searchText, searchStart, searchEnd, RichTextBoxFinds.MatchCase)
            ' Determine whether the text was found in richTextBox1.
            If indexToText >= 0 Then
                ' Return the index to the specified search text.
                returnValue = indexToText
            End If
        End If
    End If

    Return returnValue
End Function

Commenti

Il Find metodo cerca il testo specificato nel str parametro e restituisce la posizione del primo carattere della stringa di ricerca all'interno del controllo. Se la proprietà restituisce un valore negativo, la stringa di testo cercata non è stata trovata all'interno del contenuto del controllo. È possibile usare questo metodo per creare funzionalità di ricerca che possono essere fornite all'utente del controllo. È anche possibile utilizzare questo metodo per cercare il testo da sostituire con un formato specifico. Ad esempio, se l'utente ha immesso date nel controllo , è possibile utilizzare il Find metodo per cercare tutte le date nel documento e sostituirle con il formato appropriato prima di utilizzare il SaveFile metodo del controllo .

Con questa versione del Find metodo, è possibile specificare le opzioni che consentono di espandere o restringere la ricerca. È possibile specificare opzioni che consentono di trovare le maiuscole e minuscole della parola di ricerca o di cercare intere parole anziché parole parziali. Specificando l'enumerazione RichTextBoxFinds.Reverse nel options parametro , è possibile cercare testo dalla parte inferiore del documento all'inizio anziché dal metodo di ricerca superiore al basso predefinito. Questa versione del Find metodo consente inoltre di restringere la ricerca del testo selezionando una posizione iniziale e finale specifica all'interno del testo del controllo. Questa funzionalità consente di limitare l'intervallo di ricerca a una sezione specifica del testo del controllo. Se al parametro viene assegnato end un valore negativo (-1), il metodo eseguirà la ricerca fino alla fine del testo nella RichTextBox classe per le ricerche normali. Per le ricerche inversa, il valore negativo 1 (-1) assegnato al end parametro indica che il testo verrà cercato dalla fine del testo (inferiore) alla posizione definita dal start parametro . Quando i start parametri e end vengono forniti lo stesso valore, viene eseguita la ricerca dell'intero controllo per le ricerche normali. Per una ricerca inversa, viene eseguita la ricerca dell'intero controllo, ma la ricerca inizia nella parte inferiore del documento e cerca nella parte superiore del documento.

Nota

I Find metodi che accettano come string parametro non possono trovare testo contenuto in più righe di testo all'interno di RichTextBox. L'esecuzione di tale ricerca restituirà un valore negativo (-1).

Si applica a