lua语言中判断字符串是否为数字顺子
时间: 2023-10-18 08:14:55 浏览: 69
判断字符串是否为数字
4星 · 用户满意度95%
以下是一个简单的示例代码,用于判断字符串是否为数字顺子:
```
function isNumericStraight(str)
local numArray = {}
for i = 1, #str do
local c = string.sub(str, i, i)
if tonumber(c) ~= nil then
table.insert(numArray, tonumber(c))
end
end
table.sort(numArray)
for i = 1, #numArray - 1 do
if numArray[i] + 1 ~= numArray[i+1] then
return false
end
end
return true
end
-- 测试
print(isNumericStraight("12345")) -- true
print(isNumericStraight("23456")) -- true
print(isNumericStraight("34567")) -- true
print(isNumericStraight("23457")) -- false
print(isNumericStraight("1234a")) -- false
```
该函数会将输入的字符串转换为数字数组,并对数字数组进行排序。然后通过循环判断相邻的数字是否连续,如果不连续则返回false,否则返回true。
阅读全文