Changes spanish c# guide string interpolation (#31117)
I have changed translation to make it more natural, have added more information, some examples, and references to Microsoft docs
This commit is contained in:
@@ -1,29 +1,69 @@
|
||||
---
|
||||
title: String Interpolation
|
||||
localeTitle: Interpolación de cuerdas
|
||||
localeTitle: Interpolación de cadenas
|
||||
---
|
||||
# Interpolación de cuerdas
|
||||
# Interpolación de cadenas
|
||||
|
||||
En C #, normalmente para concatenar cadenas, utilizaría el operador “+” o el formato compuesto con un método como String.Format. Por formato compuesto, me refiero a una cadena de formato con marcadores de posición indexados (elementos de formato) y una lista de objetos que se utilizarán en los marcadores de posición.
|
||||
|
||||
# #
|
||||
```
|
||||
string message = "Hello " + firstName + " " + lastName + "!";
|
||||
```csharp
|
||||
string mensaje = "Hola " + nombre + " " + apellido + "!";
|
||||
|
||||
string message2 = string.Format("Hello {0} {1}!", firstName, lastName);
|
||||
string mensaje2 = string.Format("Hello {0} {1}!", nombre, apellido);
|
||||
```
|
||||
|
||||
Con las expresiones de cadena interpoladas, tiene una cadena con expresiones contenidas que se reemplazan con los resultados de las expresiones. Tiene que prefijar su cadena literal con un signo de dólar ($). Las expresiones que desea incluir en la cadena se colocan en línea entre corchetes. El mensaje anterior ahora se vería así:
|
||||
C# 6, incorpora las **expresiones de cadena interpoladas**, estas se componen de una cadena con expresiones contenidas que se reemplazan con los resultados de las expresiones. Para utilizarlas debe prefijar su cadena con un signo de dólar ($). Las expresiones que desea incluir en la cadena se colocan en línea entre corchetes. El mensaje anterior ahora se vería así:
|
||||
|
||||
# #
|
||||
```csharp
|
||||
string mensaje = $"Hola {nombre} {apellido}!";
|
||||
```
|
||||
|
||||
Dentro de un string interpolado puedes llamar a funciones, propiedades, métodos y operadores ternarios:
|
||||
|
||||
```csharp
|
||||
public class Empleado
|
||||
{
|
||||
public string Nombre { get; set; }
|
||||
public DateTime FechaDeNacimiento { get; set; }
|
||||
}
|
||||
|
||||
public static void Main()
|
||||
{
|
||||
var empleado = new Empleado();
|
||||
empleado.Nombre = "Juan";
|
||||
empleado.FechaDeNacimiento = new DateTime(1980, 12, 12);
|
||||
|
||||
Console.WriteLine($"{empleado.Nombre} ha nacido en {empleado.FechaDeNacimiento:dd/MM/yyyy}");
|
||||
//Juan ha nacido en 12/12/1980
|
||||
|
||||
Console.WriteLine($"{(empleado.Nombre == "Juan" ? "Es Juan" : "No Es Juan")}");
|
||||
//Es Juan
|
||||
}
|
||||
```
|
||||
|
||||
## Formato y Alineación
|
||||
También puedes indicar una alineación y formato al string interpolado siguiendo la siguiente sintaxis:
|
||||
|
||||
# #
|
||||
```
|
||||
string message = $"Hello {firstName} {lastName}!";
|
||||
{<expresión interpolada>[,<alineación>][:<formato>]}
|
||||
```
|
||||
|
||||
**Poco de información útil** En la interpolación de cadenas, tiene la capacidad de llamar a funciones, propiedades y operadores ternarios:
|
||||
```csharp
|
||||
Console.WriteLine($"|{"Alineado a izquierda",-25}|");
|
||||
Console.WriteLine($"|{"34",5}|");
|
||||
Console.WriteLine($"{34.1234567:F3}");
|
||||
```
|
||||
int a = 3;
|
||||
int b = 454;
|
||||
string result = $"{a}+{b} = {a+b}";
|
||||
|
||||
```
|
||||
```
|
||||
|Alineado a izquierda |
|
||||
| 34|
|
||||
34.123
|
||||
```
|
||||
|
||||
Para más información sobre las posibles alineaciones y formatos: [Composite Formatting, Microsoft](https://docs.microsoft.com/en-us/dotnet/standard/base-types/composite-formatting#alignment-component)
|
||||
|
||||
### Recursos
|
||||
- [String interpolation (C# Reference)](https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/tokens/interpolated)
|
||||
|
Reference in New Issue
Block a user