執行的代碼是here on eval.in爲什麼`sData`是一個非零值?
sMessage = "<hjpotter92> +help|"
local _, _, sCmd, sData = sMessage:find("%b<>%s[%+%-%*%/%!%#%?](%w+)%s?(.*)|")
print(_, sData, sCmd )
的print
輸出說,我sData
是空字符串的值。
爲什麼這個值不是nil
?我創建了一個基於sData
的nil
的整個項目,我發現並非如此。
我已經用此塊
if sData:len() == 0 then
sData = nil
end
所以解決了麻煩,我不是在尋求解決,使這項工作。我只是問,爲什麼它不是nil
的價值?
在更廣泛的項目範圍上工作之前,我會先填入小部件。據說,據我所知,'find'永遠不會返回'nil'。 – Zyerah 2013-04-09 03:42:59
@Telthien您可能想[重新考慮該聲明](http://eval.in/15744)。 – hjpotter92 2013-04-09 03:48:12
我收回了我的回答,既然我明白你在問什麼,我不知道是什麼原因造成的。 – Zyerah 2013-04-09 04:27:53