Difference between revisions of "String Compare"
Jump to navigation
Jump to search
Huney Jewell (talk | contribs) m (It's just an example, not really a script) |
Huney Jewell (talk | contribs) (Brushed up and added to category) |
||
Line 7: | Line 7: | ||
I have used this script for comparing the [[Key|Keys]] of two objects in a dynamic set of sensors, to decide which one should be the "Master" in the region to tell me information. I'm sure there can be more uses to this... | I have used this script for comparing the [[Key|Keys]] of two objects in a dynamic set of sensors, to decide which one should be the "Master" in the region to tell me information. I'm sure there can be more uses to this... | ||
<lsl> | |||
< | |||
integer compare(string s1, string s2) { | integer compare(string s1, string s2) { | ||
if (s1 == s2) { | if (s1 == s2) { | ||
Line 24: | Line 23: | ||
} | } | ||
} | } | ||
</ | </lsl> | ||
{{LSLC|Library}} | |||
{{LSLC|Examples}} |
Revision as of 07:13, 11 December 2007
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
String compare
Created by Xaviar Czervik. Do whatever you wish with this function: Sell it (good luck), use it, or modify it.
The following code returns 1, -1 or 0. The 1 and -1 are essentially random, however it will return the same value every time the script is executed. 0 Is returned when, and only when, the strings are exactly equal. Completely re-designed to use a few tricks I learned in the past months. Also much easier to read now.
I have used this script for comparing the Keys of two objects in a dynamic set of sensors, to decide which one should be the "Master" in the region to tell me information. I'm sure there can be more uses to this...
<lsl> integer compare(string s1, string s2) {
if (s1 == s2) { return 0; } else if (llStringLength(s1) < llStringLength(s2)) { return 1; } else if (llStringLength(s1) > llStringLength(s2)) { return -1; } else { list l = [s1, s2]; l = llListSort(l, 0, 1); if (s1 == llList2String(l, 0)) return 1; return -1; }
} </lsl>