Lua中的string.find函数功能

问题描述 投票:0回答:1

下面是我的代码

str = "abc@hotmailcom"
a = string.find(str , "@")
print(a)

我的输出是4,即“ @”的位置值

但是当我运行以下代码时

str = "abc@hotmailcom"
a = string.find(str , ".")
print(a)

而不是输出“ nil”,程序将返回值1。

我是Lua语言的新手,所以谁能向我解释正在发生什么以及string.find()在lua中如何工作?

string lua find
1个回答
0
投票

.是lua模式中所有字符的字符类,您必须使用%对其进行转义。参见Lua Patterns

> print(string.find("abc@hotmailcom", "."))
1       1
> print(string.find("abc@hotmailcom", "%."))
nil
© www.soinside.com 2019 - 2024. All rights reserved.