Urbley
Urbley

Reputation: 716

Concatenating variable into literal string

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.

Upvotes: 8

Views: 3366

Answers (1)

atlasologist
atlasologist

Reputation: 3964

The quotes inside the double bracket delimiters 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

Upvotes: 12

Related Questions