Designing and coding

Menu

Tag Archives: string

String is one of the most used types in C# and it provides many options playing with it. I wrote a post earlier where I discussed about String, StringBuilder and String.Fromat. You might want to have a look here. Today I am going to one of the very nice features that got introduced with C# 6, named String Interpolation.

What is String Interpolation?

String Interpolation is a process of generating the output string from a string literal by replacing the placeholders with the actual values. These placeholders could be just variable names or some expressions. It is like template processing where the variables are replaced with actual values to generate the final output. We already have String.Fromat where the values are replaced based on the indexing of provided parameters but we don’t need that now. Interpolation is very common feature in many new libraries and frameworks like Angular.

We will see multiple examples based on various usage of string interpolation. Lets start with basic one

field-width – It defines the width of the field. If positive then value is right aligned and if negative, it is left aligned. If the value is less than the width of the value, there is no impact in the output.

format-string – It can be used to define the format of the value like datetime, currency, number etc.

Note – There should be no space between $ and ” at the start of the string else it will htow an compile time error.Example 2:

If we have any special characters that could provide different meaning to literal then it should be escaped like “, \ etc . If we want a curly braces ({ or }) in the string then it should be written twice as {{ or }}. To use few language elements like colon (:) in expression, it should be delimited by parenthesis as well in expression.

Example 3:

Console.WriteLine($"We can use special meaning characters like \", \\ by escaping it in literal text.");
Console.WriteLine($"We can use {{curly braces}} by using it twice.");
Console.WriteLine($"To use it in expression it should be delimited by paranthesis"
+$" like 2*2 = 4 is {(2*2 == 4? "Correct" : "Incorrect")}");
// Output
We can use special meaning characters like ", \ by escaping it in literal text.
We can use {curly braces} by using it twice.
To use it in expression it should be delimited by paranthesis like 2*2 = 4 is Correct

In the above example, we have seen that how to use special characters in string literals and in expression. Let’s see one more example

Example 4:

Console.WriteLine($"3 power 4 using Math function { Math.Pow(3, 4)} and using custom power "
$"function { CustomPow(3, 4)}.");
// Output
3 power 4 using Math function 81 and using custom power function 81.

Here we can see that we can use any framework class or even custom function in this expression.

This is a short video post that I recorded few days back. In this video and I have discussed about available options to use for string manipulation in C#. I have seen many junior to senior developers making the mistakes, knowingly or unknowingly which causes performance issues. I have tried to explain it pictorially.