我是Lua编程的初学者,我想了解以下内容:
在下面的声明中,为什么使用这些括号([和])?我没有找到解释它的任何东西.
conn:execute([[ 'MySQLSTATEMENT' ]])
Run Code Online (Sandbox Code Playgroud)
此外,如果该函数还有一个参数怎么办?会是这样的:
conn:execute('another parameter',[[ 'MySQLSTATEMENT' ]]).
Run Code Online (Sandbox Code Playgroud)
(我从链接中获取了这些示例:http://www.tutorialspoint.com/lua/lua_database_access.htm)
双方括号用于指定Lua中的文字字符串.这些字符串可以包含多行,并将转义序列解释为明文.至于参数,它们的处理方式与任何其他值没有区别.对于具有两个参数的函数,您的示例在语法上是正确的.
这种风格是可取的,当你的字符串包含否则可能必须手动转义字符,如\,'和".例如,它[[here's a "quote"]]比写"here's a \"quote\""或更容易读和写'here\'s a "quote"'.
我们也可以通过匹配双方括号[[...]]来分隔文字字符串.这种括号中的文字可能会运行几行,可能会嵌套,并且不会解释转义序列.此外,当此字符是换行符时,此表单忽略字符串的第一个字符.这种形式对于编写包含程序片段的字符串特别方便;