문자열에있는 모든 문자가 1,2,3,4,5,6,7,8,9 중 하나인지 확인하려고합니다. 0 OR 소수점 및 공백을 포함하는지 여부. 나는이 코드 조각을 사용하고 있지만 작동하지 않는 이유를 알아낼 수 없습니다루아 - 문자열에 유효한 문자가 포함되어 있는지 확인하십시오.
print("Confirming added item")
local validAmountString = true
print(addScreen.amountTxtField.text)
for i = 1, #addScreen.amountTxtField.text do
local c = addScreen.amountTxtField.text:sub(i,i)
print("Char " .. i .. " in the amount textflied is " .. c)
if c == "0" or c == "1" or c == "2" or c == "3" or c == "4" or c == "5" or c == "6" or c == "7" or c == "8" or c == "9" or c == "." then
validAmountString = true
else
validAmountString = false
end
print(validAmountString)
end
if string.gsub(addScreen.nameTxtField.text, "%s+", "") ~= "" and string.gsub(addScreen.amountTxtField.text, "%s+", "") ~= "" and validAmountString == true then
--Proceed...
end
공간 부분이 작동하지만, 어떤 이유로, 나는에 == validAmountString 여부를 확인하려면 true하려고 할 때 내 if 문은 작동을 멈 춥니 다. validAmountString은 print 문에 따라 올바른 부울 값을 반환합니다.
어떤 도움이 필요합니까? :)
뒤에
break
을 추가하기 만하면 입력 된 문자열 – Piglet을 입력 해주세요. 많은 시도를했습니다. 사용자가 입력 한 값입니다. 입력 값에 올바른 부울 값이 표시됩니다 (예 : "200"이면 true). 그러나 그것이 사실 일지라도 그것은 if 문을 전달하지 않습니다. –
문자열에 유효한 숫자가 포함되어 있는지 확인하려고합니까? 이것이 실제 질문 인 경우 질문을 수정하십시오. – ktb