2012-02-04 2 views
4

私はちょうどルアを学んでいます、これは私の最初のスクリプトです。変数が空であるかどうか、またはその中に改行があるかどうかを確認するにはどうすればよいですか?あなたは値がnilであるかどうかを確認することができます空の変数チェック

+0

Luaの "空の"変数は、値がnilの変数です。たぶん、あなたは "空の文字列"、つまり長さ0の文字列を参照していますか? –

答えて

11

if emptyVar == nil then 
    -- Some code 
end 

はnilがfalseと解釈されているので、あなたはまた、次のように記述することができます。

if not emptyVar then 
    -- Some code 
end 

(チェックしたい場合を除きつまり、ブール値;))改行については

:あなたはこのためにstring.match機能を使用することができます。

local var1, var2 = "some string", "some\nstring with linebreaks" 
if string.match(var1, "\n") then print("var1 has linebreaks!") end 
if string.match(var2, "\n") then print("var2 has linebreaks!") end 
+0

最初の2つは機能しませんでしたが、最後の2つは機能しませんでした。ありがとう。 '' string.match(variable、 "\ n")then print( "found")else print( "not found") ' –

+1

改行を含む変数が空でないことを理解する必要があります。空の変数には何もありません。だからこそ、最初の2つは失敗しました。私はラインフィードを使って変数を使ってテストしたと仮定しています。 –

関連する問題