2

我目前正在为 Lua 5.1 中的网页开发一个程序,但遇到了一些奇怪的事情。

file=io.open("articles/" .. string.sub(string,1) .. "_1250.html")
fContent=file:read("*a")

nic,start=string.find(fContent,"<h1 style='text-align: center;'>")
print(fContent)
print(nic,start)
len=string.find(fContent,"</h1>",start)
name=string.sub(fContent,start+1,len-1)

返回

(...blah blah blah boring file(fContent)....)

     <h1 style='text-align: center;'>Article name</h1>
     <i id='desc'>Article description</i>

</div>
nil     nil

我也试图找到:

[[<h1 style='text-align: center;'>]]

或者

"h1 style='text-align: center;'"

它没有用(返回nil)......

4

1 回答 1

5

您需要在 string.find 函数中转义-in 。text-align

nic,start=string.find(fContent,"<h1 style='text%-align: center;'>")

会做的。

原因是因为-是一个特殊字符。您可以在此处了解有关特殊字符的更多信息:

Lua 编程:模式

于 2015-05-18T19:11:37.907 回答