String.Contains Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
Contains(String, StringComparison) |
Devuelve un valor que indica si una cadena especificada aparece dentro de esta cadena, mediante las reglas de comparación especificadas. |
Contains(Char, StringComparison) |
Devuelve un valor que indica si un carácter especificado aparece dentro de esta cadena, mediante las reglas de comparación especificadas. |
Contains(String) |
Devuelve un valor que indica si una subcadena especificada aparece dentro de esta cadena. |
Contains(Char) |
Devuelve un valor que indica si un carácter especificado aparece dentro de esta cadena. |
Contains(String, StringComparison)
- Source:
- String.Searching.cs
- Source:
- String.Searching.cs
- Source:
- String.Searching.cs
Devuelve un valor que indica si una cadena especificada aparece dentro de esta cadena, mediante las reglas de comparación especificadas.
public:
bool Contains(System::String ^ value, StringComparison comparisonType);
public bool Contains (string value, StringComparison comparisonType);
member this.Contains : string * StringComparison -> bool
Public Function Contains (value As String, comparisonType As StringComparison) As Boolean
Parámetros
- value
- String
Cadena que se va a buscar.
- comparisonType
- StringComparison
Uno de los valores de enumeración que especifica las reglas que se van a usar en la comparación.
Devoluciones
Es true
si el parámetro value
aparece en esta cadena o si value
es la cadena vacía (""); en caso contrario, es false
.
Se aplica a
Contains(Char, StringComparison)
- Source:
- String.Searching.cs
- Source:
- String.Searching.cs
- Source:
- String.Searching.cs
Devuelve un valor que indica si un carácter especificado aparece dentro de esta cadena, mediante las reglas de comparación especificadas.
public:
bool Contains(char value, StringComparison comparisonType);
public bool Contains (char value, StringComparison comparisonType);
member this.Contains : char * StringComparison -> bool
Public Function Contains (value As Char, comparisonType As StringComparison) As Boolean
Parámetros
- value
- Char
Carácter que se va a buscar.
- comparisonType
- StringComparison
Uno de los valores de enumeración que especifica las reglas que se van a usar en la comparación.
Devoluciones
true
si el parámetro de value
aparece dentro de esta cadena; en caso contrario, false
.
Se aplica a
Contains(String)
- Source:
- String.Searching.cs
- Source:
- String.Searching.cs
- Source:
- String.Searching.cs
Devuelve un valor que indica si una subcadena especificada aparece dentro de esta cadena.
public:
bool Contains(System::String ^ value);
public bool Contains (string value);
member this.Contains : string -> bool
Public Function Contains (value As String) As Boolean
Parámetros
- value
- String
Cadena que se va a buscar.
Devoluciones
Es true
si el parámetro value
aparece en esta cadena o si value
es la cadena vacía (""); en caso contrario, es false
.
Excepciones
value
es null
.
Ejemplos
En el ejemplo siguiente se determina si la cadena "fox" es una subcadena de una cita conocida. Si se encuentra "fox" en la cadena, también muestra su posición inicial.
using namespace System;
int main()
{
String^ s1 = "The quick brown fox jumps over the lazy dog";
String^ s2 = "fox";
bool b = s1->Contains( s2 );
Console::WriteLine( "Is the string, s2, in the string, s1?: {0}", b );
if (b) {
int index = s1->IndexOf(s2);
if (index >= 0)
Console::WriteLine("'{0} begins at character position {1}",
s2, index + 1);
}
}
// This example displays the following output:
// 'fox' is in the string 'The quick brown fox jumps over the lazy dog': True
// 'fox begins at character position 17
string s1 = "The quick brown fox jumps over the lazy dog";
string s2 = "fox";
bool b = s1.Contains(s2);
Console.WriteLine("'{0}' is in the string '{1}': {2}",
s2, s1, b);
if (b) {
int index = s1.IndexOf(s2);
if (index >= 0)
Console.WriteLine("'{0} begins at character position {1}",
s2, index + 1);
}
// This example displays the following output:
// 'fox' is in the string 'The quick brown fox jumps over the lazy dog': True
// 'fox begins at character position 17
let s1 = "The quick brown fox jumps over the lazy dog"
let s2 = "fox"
let b = s1.Contains s2
printfn $"'{s2}' is in the string '{s1}': {b}"
if b then
let index = s1.IndexOf s2
if index >= 0 then
printfn $"'{s2} begins at character position {index + 1}"
// This example displays the following output:
// 'fox' is in the string 'The quick brown fox jumps over the lazy dog': True
// 'fox begins at character position 17
Class Example
Public Shared Sub Main()
Dim s1 As String = "The quick brown fox jumps over the lazy dog"
Dim s2 As String = "fox"
Dim b As Boolean = s1.Contains(s2)
Console.WriteLine("'{0}' is in the string '{1}': {2}",
s2, s1, b)
If b Then
Dim index As Integer = s1.IndexOf(s2)
If index >= 0 Then
Console.WriteLine("'{0} begins at character position {1}",
s2, index + 1)
End If
End If
End Sub
End Class
'
' This example displays the following output:
' 'fox' is in the string 'The quick brown fox jumps over the lazy dog': True
' 'fox begins at character position 17
Comentarios
Este método realiza una comparación ordinal (sin distinción entre mayúsculas y minúsculas y sin distinción entre referencias culturales). La búsqueda comienza en la primera posición de carácter de esta cadena y continúa hasta la última posición de carácter.
Para realizar una comparación que distingue entre mayúsculas y minúsculas o ordinales:
En .NET Core 2.1 y versiones posteriores: llame a la Contains(String, StringComparison) sobrecarga en su lugar.
En .NET Framework: Create un método personalizado. En el ejemplo siguiente se muestra un enfoque de este tipo. Define un String método de extensión que incluye un StringComparison parámetro e indica si una cadena contiene una subcadena cuando se usa la forma especificada de comparación de cadenas.
using System;
public static class StringExtensions
{
public static bool Contains(this String str, String substring,
StringComparison comp)
{
if (substring == null)
throw new ArgumentNullException("substring",
"substring cannot be null.");
else if (! Enum.IsDefined(typeof(StringComparison), comp))
throw new ArgumentException("comp is not a member of StringComparison",
"comp");
return str.IndexOf(substring, comp) >= 0;
}
}
open System
open System.Runtime.CompilerServices
[<Extension>]
type StringExtensions =
[<Extension>]
static member Contains(str: string, substring, comp: StringComparison) =
if substring = null then
invalidArg "substring" "substring cannot be null"
if Enum.IsDefined(typeof<StringComparison>, comp) |> not then
invalidArg "comp" "comp is not a member of StringComparison"
str.IndexOf(substring, comp) >= 0
String s = "This is a string.";
String sub1 = "this";
Console.WriteLine("Does '{0}' contain '{1}'?", s, sub1);
StringComparison comp = StringComparison.Ordinal;
Console.WriteLine(" {0:G}: {1}", comp, s.Contains(sub1, comp));
comp = StringComparison.OrdinalIgnoreCase;
Console.WriteLine(" {0:G}: {1}", comp, s.Contains(sub1, comp));
// The example displays the following output:
// Does 'This is a string.' contain 'this'?
// Ordinal: False
// OrdinalIgnoreCase: True
let s = "This is a string."
let sub1 = "this"
printfn $"Does '{s}' contain '{sub1}'?"
let comp = StringComparison.Ordinal
printfn $" {comp:G}: {s.Contains(sub1, comp)}"
let comp2 = StringComparison.OrdinalIgnoreCase
printfn $" {comp2:G}: {s.Contains(sub1, comp2)}"
// The example displays the following output:
// Does 'This is a string.' contain 'this'?
// Ordinal: False
// OrdinalIgnoreCase: True
Imports System.Runtime.CompilerServices
Module StringExtensions
<Extension()>
Public Function Contains(str As String, substring As String,
comp As StringComparison) As Boolean
If substring Is Nothing Then
Throw New ArgumentNullException("substring",
"substring cannot be null.")
Else If Not [Enum].IsDefined(GetType(StringComparison), comp)
Throw New ArgumentException("comp is not a member of StringComparison",
"comp")
End If
Return str.IndexOf(substring, comp) >= 0
End Function
End Module
Public Module Example
Public Sub Main
Dim s As String = "This is a string."
Dim sub1 As String = "this"
Console.WriteLine("Does '{0}' contain '{1}'?", s, sub1)
Dim comp As StringComparison = StringComparison.Ordinal
Console.WriteLine(" {0:G}: {1}", comp, s.Contains(sub1, comp))
comp = StringComparison.OrdinalIgnoreCase
Console.WriteLine(" {0:G}: {1}", comp, s.Contains(sub1, comp))
End Sub
End Module
' The example displays the following output:
' Does 'This is a string.' contain 'this'?
' Ordinal: False
' OrdinalIgnoreCase: True
Si está interesado en la posición de la subcadena value
en la instancia actual, puede llamar al IndexOf método para obtener la posición inicial de su primera aparición, o bien puede llamar al LastIndexOf método para obtener la posición inicial de su última aparición. En el ejemplo se incluye una llamada al IndexOf(String) método si se encuentra una subcadena en una instancia de cadena.
Consulte también
Se aplica a
Contains(Char)
- Source:
- String.Searching.cs
- Source:
- String.Searching.cs
- Source:
- String.Searching.cs
Devuelve un valor que indica si un carácter especificado aparece dentro de esta cadena.
public:
bool Contains(char value);
public bool Contains (char value);
member this.Contains : char -> bool
Public Function Contains (value As Char) As Boolean
Parámetros
- value
- Char
Carácter que se va a buscar.
Devoluciones
true
si el parámetro de value
aparece dentro de esta cadena; en caso contrario, false
.
Comentarios
Este método realiza una comparación ordinal (sin distinción entre mayúsculas y minúsculas y sin distinción entre referencias culturales).