Operações com Strings

Tango.CommonOperations.StringOperations

Esta classe estática contém métodos e propriedades com as operações comuns para trabalhar com valores do tipo string. Todos os membros retornam os delegates que realizam a operação descrita.

Propriedades

Nome

Tipo

Descrição

Concat

Func<string, string>

Retorna uma função para representar a operação de concatenação entre duas strings (string.Concat).

Concat3

Func<string, string, string>

Retorna uma função para representar a operação de concatenação entre três strings (string.Concat).

Métodos

Nome

Parâmetros

Retorno

Descrição

ConcatWith

string value

Func<string, string>

Retorna uma função parcialmente aplicada à função retornada por Concat com o parâmetro informado.

Concat3With

string value

Func<string, string, string>

Retorna uma função parcialmente aplicada à função retornada por Concat3 com o parâmetro informado.

Concat3With

string value

string value2

Func<string, string>

Retorna uma função parcialmente aplicada à função retornada por Concat3 com os parâmetros informados.

Como Usar

Como as propriedades retornam delegates para representar as operações, é possível utilizá-las como métodos.

Operação Concat

string value = "Hello";
string value2 = " World";
string result = StringOperations.Concat(value, value2);

//result= "Hello World"

Operação Concat3

string value = "Hello";
string value2 = " my ";
string value3 = "World";
string result = StringOperations.Concat3(value, value2, value3);

//result= "Hello my World"

Para os métodos temos uma sintaxe um pouco diferente, isso porque é realizada uma aplicação parcial ao método retornado pela própriedade.

Por conta disso, precisamos executar o método com os primeiros parâmetros, para obtermos um novo método que espera os parâmetros restantes:

Operação ConcatWith

string value = "Hello";
string value2 = " World";
Func<string, string> concatWith = StringOperations.ConcatWith(value);
string result = concatWith(value2);

//result= "Hello World"

Também podemos realizar a chamada de forma concatenada:

string value = "Hello";
string value2 = " World";
string result = StringOperations.ConcatWith(value)(value2);

//result= "Hello World"

O método ~With também é aplicável ao Concat3, nestes casos você pode utilizar a aplicação parcial com um ou dois parâmetros, de acordo com a necessidade.

Operação Concat3With

string value = "Hello";
string value2 = " my ";
string value3 = "World";
Func<string, string, string> concat3With= StringOperations.Concat3With(value);
string result = concat3With(value2, value3);

//result= "Hello my World"

Também podemos realizar a chamada de forma concatenada:

string value = "Hello";
string value2 = " my ";
string value3 = "World";
string result = StringOperations.Concat3With(value)(value2, value3);

//result= "Hello my World"

E por fim, podemos informar os dois parâmetros na primeira sobrecarga, em qualquer um dos modos:

string value = "Hello";
string value2 = " my ";
string value3 = "World";
Func<string, string> concat3With= StringOperations.Concat3With(value, value2);
string result = concat3With(value3);

//result= "Hello my World"
string value = "Hello";
string value2 = " my ";
string value3 = "World";
string result = StringOperations.Concat3With(value, value2)(value3);

//result= "Hello my World"

Last updated