stristr
		
		
		
		Jump to navigation
		Jump to search
		
| LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials | 
Summary
Function: string Stristr( string haystack, string needle, integer after_needle );
Returns part of haystack string from the first occurrence of needle to the end of haystack.
Returns a string containing the text from haystack that comes before or after needle.
| • string | haystack | – | The input string | |
| • string | needle | – | the search within | |
| • integer | after_needle | – | If TRUE, Stristr returns the part of the haystack after the first occurrence of the needle, otherwise before first occurrence. | 
Specification
//Function created by Ugleh Ulrik
string stristr(string haystack, string needle, integer after_needle){
    if(haystack)
    {//we have a haystack, it's not ""
        //Now find us a needle!
        integer pos = llSubStringIndex(haystack, needle);
        if(~pos)
        {//We have found a needle!
            if(after_needle)//return what comes after needle
                return llGetSubString(haystack, pos + llStringLength(needle), -1);
            return llDeleteSubString(haystack, pos, -1);
        }
    }
    return "";
}
Examples
This example uses its basic feature, to provide the content left, or right of the searched string.
default
{
    touch_start(integer total_number)
    {
         string source = "Hello there, Ugleh is my name!";
         string mess = stristr(source,"Ugleh",TRUE); //True means after Needle
         llOwnerSay(mess);//outputs  "  is my name!"
         
         mess = stristr(source,"Ugleh",FALSE); //False means before Needle.
         llOwnerSay(mess);//outputs "Hello there, "
    }
}
See Also
Functions
| • | llSubStringIndex | – | Find a string in another string | |
| • | llParseString2List | – | Split a string up into a list | |
| • | llParseStringKeepNulls | – | Like llParseString2List but it keeps empty strings | |
| • | llListFindList | – | Like llSubStringIndex but for lists |