llStringLength

From Second Life Wiki
Jump to navigation Jump to search

Summary

Function: integer llStringLength( string str );
0.0 Forced Delay
10.0 Energy

Returns an integer that is the number of characters in str (not counting the null).

• string str

Caveats

  • The index of the last character is not equal to the string length.
    • Character indexs start at zero (the index of the first character is zero).

Examples

<lsl> // assumptions: // object name: LSLWiki // script name: _lslwiki

default {

   state_entry()
   {
       string HowLongAmI = "123";
       integer strlen = llStringLength(HowLongAmI);
       llOwnerSay( "'" + HowLongAmI + "' has " +(string) strlen + " characters.");
       // The owner of object LSLWiki will hear 
       // LSLWiki: '123' has 3 characters.
   }

}

</lsl>


  • LSL-2 sees all strings as UTF8
  • LSL-Mono sees all string as UTF16
  • llStringLength gets the number of characters
  • Both UTF8 and UTF16 use multibyte characters
  • Some communication functions (i.e. llHTTPResponse) are limited by number of Bytes, and work with UTF8 strings

<lsl> integer UTF8Length(string msg) { //Returns the number of BYTES a string will have when converted to UTF8 by communication functions //Simple and efficient! //Released to the public domain by kimmie Loveless

   integer rNum = llStringLength(msg);
   return rNum + ((llStringLength(llEscapeURL(msg)) - rNum)/4);

}

</lsl>

See Also

Functions

•  llGetListLength

Deep Notes

Signature

function integer llStringLength( string str );