Manipulación de cadenas

Manipulación de cadenas

# Reemplazar una cadena dentro de una cadena

Usando el System.String.Replace método, puede reemplazar parte de una cadena con otra cadena.

string s = "Hello World";
s = s.Replace("World", "Universe"); // s = "Hello Universe"

Todas las apariciones de la cadena de búsqueda se reemplazan:

string s = "Hello World";
s = s.Replace("l", "L"); // s = "HeLLo WorLD"

String.Replace también se puede usar para eliminar parte de una cadena, especificando una cadena vacía como valor de reemplazo:

string s = "Hello World";
s = s.Replace("ell", String.Empty); // s = "Ho World"

# Cambiando el caso de los caracteres dentro de una Cadena

El System.String La clase admite varios métodos para convertir caracteres en mayúsculas y minúsculas en una cadena.

  • System.String.ToLowerInvariant se utiliza para devolver un objeto String convertido a minúsculas.

  • System.String.ToUpperInvariant se utiliza para devolver un objeto String convertido a mayúsculas.

Nota: La razón para usar el invariante versiones de estos métodos es evitar la producción de letras específicas de la cultura inesperadas. Esto se explica aquí en detalle.

Ejemplo:

string s = "My String";
s = s.ToLowerInvariant(); // "my string"
s = s.ToUpperInvariant(); // "MY STRING"

Tenga en cuenta que puede elige especificar una Cultura específica al convertir a minúsculas y mayúsculas utilizando los métodos String.ToLower(CultureInfo) y String.ToUpper(CultureInfo) según corresponda.

# Encontrar una cadena dentro de una cadena

Usando el System.String.Contains puede averiguar si existe una cadena en particular dentro de una cadena. El método devuelve un valor booleano, verdadero si la cadena existe o falso.

string s = "Hello World";
bool stringExists = s.Contains("ello");  //stringExists =true as the string contains the substring 

Usando el System.String.IndexOf método, puede ubicar la posición inicial de una subcadena dentro de una cadena existente.
Tenga en cuenta que la posición devuelta se basa en cero, se devuelve un valor de -1 si no se encuentra la subcadena.

string s = "Hello World";
int location = s.IndexOf("ello"); // location = 1

Para encontrar la primera ubicación desde el final de una cadena, use el System.String.LastIndexOf método:

string s = "Hello World";
int location = s.LastIndexOf("l"); // location = 9

# Eliminar (recortar) espacios en blanco de una cadena

El System.String.Trim El método se puede usar para eliminar todos los espacios en blanco iniciales y finales de una cadena:

string s = "     String with spaces at both ends      ";
s = s.Trim(); // s = "String with spaces at both ends"

Además:

  • Para eliminar los espacios en blanco solo desde el **comienzo** de una cadena, use:[`System.String.TrimStart`](https://msdn.microsoft.com/en-us/library/system.string .trimstart(v=vs.110).aspx)
  • Para eliminar los espacios en blanco solo del **final** de una cadena, use:[`System.String.TrimEnd`](https://msdn.microsoft.com/en-us/library/system.string .trimend(v=vs.110).aspx)
  • Subcadena para extraer parte de una cadena.

    El System.String.Substring El método se puede utilizar para extraer una parte de la cadena.

    string s ="A portion of word that is retained";
    s=str.Substring(26);  //s="retained"
    
    s1 = s.Substring(0,5);  //s="A por"
    
    

    # Dividir una cadena usando un delimitador

    Utilice el System.String.Split método para devolver una matriz de cadenas que contiene subcadenas de la cadena original, dividida según un delimitador especificado:

    string sentence = "One Two Three Four";
    string[] stringArray = sentence.Split(' ');
    
    foreach (string word in stringArray)
    {
        Console.WriteLine(word);    
    }
    
    

    Salida:

    Una
    Dos
    Tres
    Cuatro

    # Concatenar una matriz de cadenas en una sola cadena

    El System.String.Join El método permite concatenar todos los elementos en una matriz de cadenas, usando un separador específico entre cada elemento:

    string[] words = {"One", "Two", "Three", "Four"};
    string singleString = String.Join(",", words); // singleString = "One,Two,Three,Four"
    
    

    # Concatenación de cadenas

    La concatenación de cadenas se puede hacer usando el System.String.Concat método, o (mucho más fácil) usando el + operador:

    string first = "Hello ";
    string second = "World";
    
    string concat = first + second; // concat = "Hello World"
    concat = String.Concat(first, second); // concat = "Hello World"