String Compare: Difference between revisions
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>