找到’.’与string.find()

前端之家收集整理的这篇文章主要介绍了找到’.’与string.find()前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试进行简单的字符串操作:获取文件名称,而不使用扩展名.只有,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

猜你在找的Lua相关文章