Multi line strings

<< Click to Display Table of Contents >>

Navigation:  ThinBASIC Core Language > Operators > String >

Multi line strings


Multi line strings assignment


Multi line strings are a fringe feature of programming languages. They are very rarely needed, so a lot of languages don't support them at all. And even when a language does support them, most programmers are not even aware of that. How often have you seen something like this in real code:


  DIM myStr AS STRING = "This is a thinBasic
                         multiline string
                         just because I can!"


To simplify assignment of multi line text strings to string variables, thinBasic support 2 distinct ways:

1.double quote multi line

2.RAWTEXT keyword


1. Double quote multi line


To use this method just set a double quote at the beginning of the multi line string and than set another double quote char at the end of the string in a different line of the code. thinBasic will join all the lines found between the 2 double quotes.



  DIM MyString AS STRING = "<r><![CDATA[


        The text string goes here.  Since this is a XML CDATA section,

        stuff like <> work fine too, even if definitely invalid XML.




Important: if you want to use single quote inside in multi line string as real char, just start with multi line string with a single quote, than enter a new line, type your multi line string and terminate it again with a single quote in a new line.


Example of double quotes inside multi line string:


  MyString = "



        "The text string goes here.  Since this is a XML CDATA section,

        stuff like <> work fine too, even if definitely invalid XML."







RAWTEXT has been deprecated in favor of multi line strings

2. RAWTEXT keyword


To use this method use RAWTEXT / END RAWTEXT keywords pairs block to enclose a multi line string.






        The text string goes here.  Since this is a XML CDATA section,

        stuff like <> work fine too, even if definitely invalid XML.





Rules for using RAWTEXT / END RAWTEXT case RAWTEXT is an assignment, it MUST begin on the same line of the assignment line continuation sign before RAWTEXT

3.after RAWTEXT there MUST be a a new line

4.END RAWTEXT MUST be on a line without any other text