Question

I'm trying to concatenate a variable into a literal string purely for readability purposes e.g.

myString = "test"
myString2 = [[
first part of the string
this is a " .. myString .. " string
last part of the string]]
print(myString2)

but this literally outputs

first part of the string
this is a " .. myString .. " string
last part of the string

I'm sure it's something simple but I've tried Googling to find out how to achieve this and came up blank.

Was it helpful?

Solution

The quotes inside the double bracket delimitors aren't doing anything. The only way to end the double bracket is with a double bracket:

myString2 = [[
first part of the string
this is a ]] .. myString .. [[ string
last part of the string]]

That will give you:

first part of the string
this is a test string
last part of the string

See: http://www.lua.org/pil/2.4.html

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top