Forcing string comparisons, or When is "0" not 0?
Ralph DiMola
rdimola at evergreeninfo.net
Thu Oct 15 15:35:01 EDT 2015
I had a thread a month or 2 ago (Compare numeric strings with leading zeros). I needed to make sure that 0123 <> 123 for password validation. There were many good suggestions but I finally wound up with:
function stringsAreEqual pString1, pString2
set the caseSensitive to true
if (len(pString1) = len(pString2)) and (pString1 = pString2) then
return true
end if
return false
end stringsAreEqual
Something built in would be better. If "0123" is exactly "123" then... would work for me
Now, should "is exactly" respect the caseSensitive property? If not then "exactly" would mean just what is says "EXACTLY". But respecting the caseSensitive property would be more flexible.
Ralph DiMola
IT Director
Evergreen Information Services
rdimola at evergreeninfo.net
Phone: 518-636-3998 Ex:11
Cell: 518-796-9332
-----Original Message-----
From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Geoff Canyon
Sent: Thursday, October 15, 2015 2:48 PM
To: How to use LiveCode
Subject: Re: Forcing string comparisons, or When is "0" not 0?
On 2015-10-14 22:19, Devin Asay wrote:
> Shouldn’t there be a way to force a string comparison? I know LC tries
> to be all helpful about casting numerals as numbers, but what if I
> want to know if it’s the exact string?
>
I think you have come up with the best syntax right there.
put 3 is "3" -- true
put 3 is "3.0" -- true
put 3 is 2.999999999999999 -- true
put 3 is exactly "3" -- false
put 3 is exactly "3.0" -- false
put "3" is exactly "3" -- true
put 3 is exactly 3 -- true
put 3 is exactly 3.0 -- true
put 3 is exactly 2.999999999999999 -- false _______________________________________________
use-livecode mailing list
use-livecode at lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
More information about the use-livecode
mailing list