如何检测字符串中的“过多空格”?

时间:2015-06-30 13:21:19

标签: string lua

我正在Lua制作一个简单的安卓游戏,并且在设置游戏的其中一个步骤中设置了一个由玩家输入的单词(或句子;基本上是一个字符串)。 “word”可能有空格,但我想禁止玩家输入一行中有两个或多个空格的字符串,如"fly bird"

我尝试使用string.match(word, " ")string.match(word, "%s%s")string.match(word, "%s+%s+")并且没有一个工作,不知何故,最后一个总是“检测”双重空间,无论它是否有空格。

如何检测字符串中的行中是否有多个空格? (只是检测,而不是替换,所以我可以向播放器发送警告信息。)

2 个答案:

答案 0 :(得分:3)

If its exactly two spaces you are interested in, simply use find

word:find('  ')

It will return range of first occurrence of two consecutive spaces.

答案 1 :(得分:0)

input = input:gsub("%s+", " ")

上面的代码应该接受输入并删除所有过多的间距,并用一个空格替换它。