Luaを使用して文字列のサイズを比較する方法
Luaでは、比較演算子(<、>、<=、>=、==、~=など)を使って文字列の大小を比較できる。
以下のコードスニペットを御覧ください。
str1 = "abc"
str2 = "def"
if str1 < str2 then
print("str1小于str2")
elseif str1 > str2 then
print("str1大于str2")
else
print("str1等于str2")
end
この例では、文字列”abc”と”def”は比較されます。そして、”a”のASCIIコードは”b”のASCIIコードよりも小さく、”b”のASCIIコードは”c”のASCIIコードよりも小さく、”c”のASCIIコードは”d”のASCIIコードよりも小さいため、文字列”abc”は文字列”def”よりも小さいです。よって、上記のコードは”str1はstr2より小さい”を出力します。
大文字小文字を区別せずに文字列を比較したい場合は、Luaのstring.lower関数で文字列を小文字に変換することができます。例を次に示します。
str1 = "ABC"
str2 = "def"
if string.lower(str1) < string.lower(str2) then
print("str1小于str2")
elseif string.lower(str1) > string.lower(str2) then
print("str1大于str2")
else
print("str1等于str2")
end
この例では、「ABC」という文字列を小文字に変換してから「def」という文字列と比較します。「abc」という文字列は「def」という文字列よりも小さいので、上記コードでは「str1はstr2より小さい」が出力されます。