Skip to main content

String Interpolation in VB .NET

Here shows 2 ways to implement string interpolation, they should be very useful for formatting output string.

String.Format Method

This method is very common and easy to use for outputting string. Just put the string or variable after first argument.

Dim strOutputString As String = "The price of {0} is {1}."

Debug.Print(String.Format(strOutputString, "book", "10"))
'The price of book is 10.

Of course, passing more arguments is acceptable.

Dim strOutputString As String = "The price of {0} is {1}, and buy {2} get {3} free."

Debug.Print(String.Format(strOutputString, "book", "10", "2", "1"))
'The price of book is 10, and buy 2 get 1 free.

We sometimes may need to design a shared function for general purpose. So, using array should get more flexibility in various cases.

Dim strOutputString As String = "The price of {0} is {1}."
Dim arrOutputParams As String() = {"book", "10"}

Debug.Print(String.Format(strOutputString, arrOutputParams))
'The price of book is 10.

Dollar Sign

Dollar sign will lead string to be treated as a template string, but it must be assigned with string value due to it needs to be recognized by compiler.

Dim strProduct As String = "book"
Dim strPrice As String = "10"
Dim strOutputString As String = $"The price of {strProduct} is {strPrice}."

Debug.Print(strOutputString)
'The price of book is 10.

strProduct = "pecil"
strPrice = "5"
strOutputString = $"The price of {strProduct} is {strPrice}."

Debug.Print(strOutputString)
'The price of pecil is 5.

If you put dollar sign before a variable you will see the warning like below picture.

Comments

  1. Hello thank you for the explain, i would like to add a code that use in text the { some text code } and because of this, gives me error, how can i include it without any error ?

    Thank you in advance.

    ReplyDelete
    Replies
    1. Sorry, I cannot give you any opinion due to I don't know the exact code that you use. You could directly try those examples written in this article, and then you may find the problem by yourself.
      Thanks for your comment.

      Delete

Post a Comment

Popular posts from this blog

aras.uiShowItemEx Method (aras Object)

aras.uiShowItemEx Method Shows Item with Item node. Syntax aras.uiShowItem( itemNd , viewMode , isOpenInTearOff ) Parameters Name Type Description itemNd Object Required. Item node. viewMode String Optional. Unknown purpose but only supports the following values: tab view (Default) openFile new ※Each supported value will get same result. Therefore, call method and pass undefined for this parameter is OK. isOpenInTearOff Boolean Optional. Specifies whether show Item with tear-off window. true - open in a tear-off window. false - open in a tab. (Default) Return Value An AsyncResult object or a Boolean. Returns AsyncResult object if the Item winodw is opened successfully, otherwise returns false. See Also aras Object Aras Innovator Client Framework

aras.uiShowItem Method (aras Object)

aras.uiShowItem Method Gets Item by Item ID and then shows the Item. Syntax aras.uiShowItem( itemTypeName , itemID , viewMode ) Parameters Name Type Description itemTypeName String Required. Name of the ItemType. itemID String Required. ID of the Item. viewMode String Optional. Unknown purpose but only supports the following values: tab view - This is default. openFile new ※Each supported value will get same result. Therefore, call method without this parameter is OK. Return Value An AsyncResult object or a Boolean. Returns AsyncResult object if the Item winodw is opened successfully, otherwise returns false. See Also aras Object Aras Innovator Client Framework

window.handleItemChange Method (Instance Window Object)

window.handleItemChange Method Changes current Item's property value. If Item is not locked, the function will do nothing. Syntax window.handleItemChange( propNm , propVal , dataType , datePattern ) Parameters Name Type Description propNm String Required. Property name. propVal String Required. Property value. dataType String Optional. Property data type. If the data type is "date", this parameter is required, otherwise it is not necessary to pass. datePattern String Optional. Date pattern, supports the following values: short_date (Default) short_date_time long_date long_date_time See Also Instance Window Object Aras Innovator Client Framework