我正在尝试进行简单的字符串操作:获取文件的名称,而不使用扩展名.只有,string.find()似乎有点问题:
s = 'crate.png' i,j = string.find(s,'.') print(i,j) --> 1 1
并且只有点:
s = 'crate.png' i,'p') print(i,j) --> 7 7
这是一个错误,还是我做错了什么?
解决方法
string.find(),默认情况下,在字符串中找不到字符串,它在字符串中找到
patterns.更多完整信息可以在链接中找到,但这是相关部分;
The ‘.’ represents a wildcard character,which can represent any character.
要实际找到字符串.,需要使用百分号%来转义句点.
编辑:或者,你可以传入一些额外的参数,find(pattern,init,plain),它允许你传入true作为最后一个参数并搜索普通字符串.那会是你的陈述;
> i,'.',1,true) -- plain search starting at character 1 > print(i,j) 6 6