7

我只是lua的新手......所以如果我错过了一些基本的东西,我很抱歉。
我正在运行一个简单的测试,看看我是否可以在字符串中找到某些值。

这是代码:

print(string.find('fd@testca','.') )

而不是失败,这是我所期待的,我回来了:

mymachinename:/usr/share/std/test# lua test.lua
1       1

你能告诉我哪里出错了吗?谢谢。

4

2 回答 2

6

这是因为在 Lua 中,该find方法查找模式,并.表示任何字符

您可以使用字符集来解决该问题:

print(string.find('fd@testca','[.]') )

这是一个小演示的链接

于 2013-03-07T16:07:00.853 回答
3

Lua 使用模式(在此处描述)进行搜索。您可以使用可选的第四个参数关闭模式:

print(string.find('fd@testca','.', 1, true) )

可选的第三个参数 (1) 是起始位置。

于 2013-03-07T16:14:26.360 回答