这就是接受用户的输入并使用该特定文本进行搜索。
玩string.gsub
.
io.write("ENTER ANY STORY :-D ")
story=io.read()
io.write("t OKAY!, THAT'S NICE :-D ")
io.write("t DO YOU WANT TO REPLACE ANY TEXT:? ")
accept=io.read()
if accept=="YES" or "yes" then
io.write("t WHICH TEXT TO REPLAE? ")
replace=io.read()
--HERE IS THE REPLACING TEXT
io.write("t WITH WHAT:? ")
with=io.read()
result=string.gsub(story,replace,with)
print("t THE REPLACED TEXT IS: ",result)
elseif accept=="NO" or "no" then
print(result)
end
错误:elseif
循环不起作用!!
==
和or
的工作方式类似于数学运算符,因为它们一次被计算一个,首先计算==
。如果accept
'no'
,accept=="YES" or "yes"
将像这样计算:
(accept == "YES") or "yes"
('no' == "YES") or "yes"
false or "yes"
"yes"
在 Lua 中,除nil
和false
之外的所有值都是真实的,因此您的if
块将始终运行而不是elseif
块。
正如评论中所说,accept:upper()=="YES"
会修复它。accept:upper()
返回一个字符串,其中accept
的所有字母都转换为大写,因此您只需将其与一个值进行比较。
试试这个。
io.write("ENTER ANY STORY :-D ")
story=io.read()
io.write("t OKAY!, THAT'S NICE :-D ")
io.write("t DO YOU WANT TO REPLACE ANY TEXT:? ")
accept=io.read()
if accept=="YES" or accept == "yes" then
io.write("t WHICH TEXT TO REPLAE? ")
replace=io.read()
--HERE IS THE REPLACING TEXT
io.write("t WITH WHAT:? ")
with=io.read()
result=string.gsub(story,replace,with)
print("t THE REPLACED TEXT IS: ",result)
elseif accept=="NO" or accept == "no" then
print(result)
end