Lua模式匹配相似的连续数字

我有一个字符串,只包含从29的数字,比如'223488875662264442',保证其中不会包含超过3个相邻的相似数字,例如,它不能包含'7777',但可以包含'27747772'

我想要制作一个可以匹配所有相似连续数字的模式,例如:

> str = '44788895532244474568884511123331566';
> for n in string.gmatch(str,pat) do -- pat是模式
>>    print(n);
> end
44
7
888
9
55
...

我已经尝试过像'(%d)%1*'这样的模式,但没有成功。

我不能使用正则表达式,我需要使用Lua模式。

点赞