RichTextBox.Find Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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 richTextBox1
button1
, 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 start
FindMyText
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 richTextBox1
button1
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).