<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-CN">
	<id>http://i.bnu.edu.cn/wiki/index.php?action=history&amp;feed=atom&amp;title=LlParseString2List</id>
	<title>LlParseString2List - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="http://i.bnu.edu.cn/wiki/index.php?action=history&amp;feed=atom&amp;title=LlParseString2List"/>
	<link rel="alternate" type="text/html" href="http://i.bnu.edu.cn/wiki/index.php?title=LlParseString2List&amp;action=history"/>
	<updated>2026-06-01T03:37:40Z</updated>
	<subtitle>本wiki的该页面的版本历史</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>http://i.bnu.edu.cn/wiki/index.php?title=LlParseString2List&amp;diff=801&amp;oldid=prev</id>
		<title>Ty：创建页面，内容为“{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}}   {{函数详情 |函数名 = Function: list llParseString2List( string src, list separators, list…”</title>
		<link rel="alternate" type="text/html" href="http://i.bnu.edu.cn/wiki/index.php?title=LlParseString2List&amp;diff=801&amp;oldid=prev"/>
		<updated>2020-08-23T03:49:42Z</updated>

		<summary type="html">&lt;p&gt;创建页面，内容为“{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}}   {{函数详情 |函数名 = Function: list llParseString2List( string src, list separators, list…”&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{函数详情&lt;br /&gt;
|函数名 = Function: list llParseString2List( string src, list separators, list spacers );&lt;br /&gt;
|参数= 参数：&lt;br /&gt;
• string	src	–	source string	&lt;br /&gt;
&lt;br /&gt;
• list	separators	–	separators to be discarded&lt;br /&gt;
	&lt;br /&gt;
• list	spacers	–	spacers to be kept&lt;br /&gt;
|返回值= 返回值：&lt;br /&gt;
返回一个被 src 分解成字符串列表的列表，丢弃分隔符，保留间隔符，丢弃生成的任何 null (空字符串)值。&lt;br /&gt;
|注意事项=&lt;br /&gt;
注意事项&lt;br /&gt;
*删除所有空字符串(由于间隔器或分隔器彼此相邻或两端相邻而产生) ;&lt;br /&gt;
 如果您想要它们(例如，为了保持列表的顺序) ，可以使用 llparse/stringkeepnulls;&lt;br /&gt;
*只使用前8个分离器和前8个间隔器。除此之外的一切都会被忽略。可以参考下面的 # useful snippets section。输出中项数的唯一限制是可用脚本内存。&lt;br /&gt;
*所有分隔符和间隔符都必须是字符串。所有其他类型都将被忽略;&lt;br /&gt;
*分离器比间隔器更有先例。字符串从头到尾被解析。在移动到下一个位置之前，将每个位置与分离器、垫片进行比较;&lt;br /&gt;
*重复的分离器和间隔器没有不良影响;&lt;br /&gt;
*Llparsestring2list 返回的列表中的所有元素都是字符串，如果要将它们用作其他类型，则必须显式地进行类型转换。不要依赖于其他 lllist2 *函数的隐式类型映射(因为它们通常返回一个默认值) ;&lt;br /&gt;
*记住使用变量捕获操作的结果，除非您计划直接对结果采取行动。&lt;br /&gt;
|示例=&lt;br /&gt;
示例一&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    state_entry()&lt;br /&gt;
    {&lt;br /&gt;
        // This will say:&lt;br /&gt;
        // &amp;lt;A&amp;gt;&amp;lt;crazy&amp;gt;&amp;lt;fox&amp;gt;&amp;lt;.&amp;gt;&amp;lt;Saw&amp;gt;&amp;lt;the&amp;gt;&amp;lt;moon&amp;gt;&amp;lt;.&amp;gt;&amp;lt;.&amp;gt;&lt;br /&gt;
        string my_string = &amp;quot;A crazy fox.  Saw the moon..&amp;quot;;&lt;br /&gt;
        list my_list = llParseString2List(my_string,[&amp;quot; &amp;quot;],[&amp;quot;.&amp;quot;]);&lt;br /&gt;
        llOwnerSay(&amp;quot;&amp;lt;&amp;quot; + llDumpList2String(my_list,&amp;quot;&amp;gt;&amp;lt;&amp;quot;) + &amp;quot;&amp;gt;&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
        // This will say:&lt;br /&gt;
        //  &amp;lt;A&amp;gt;&amp;lt;crazy&amp;gt;&amp;lt;fox&amp;gt;&amp;lt;.&amp;gt;&amp;lt;&amp;gt;&amp;lt;&amp;gt;&amp;lt;Saw&amp;gt;&amp;lt;the&amp;gt;&amp;lt;moon&amp;gt;&amp;lt;.&amp;gt;&amp;lt;&amp;gt;&amp;lt;.&amp;gt;&amp;lt;&amp;gt;&lt;br /&gt;
        my_list = llParseStringKeepNulls(my_string,[&amp;quot; &amp;quot;],[&amp;quot;.&amp;quot;]);&lt;br /&gt;
        llOwnerSay(&amp;quot;&amp;lt;&amp;quot; + llDumpList2String(my_list,&amp;quot;&amp;gt;&amp;lt;&amp;quot;) + &amp;quot;&amp;gt;&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
虽然 lsl 不支持 list-in-lists，但是您可以通过连续调用来模拟 list-in-lists，或者您可以使用 json.this 示例中有些项目提供了额外的信息。&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
string shoppinglist = &amp;quot;macaroni::pepperoni::bread#wheat::sausage#italian::coffee::syrup::apple::ice cream#strawberry#chocolate#vanilla&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    state_entry()&lt;br /&gt;
    {&lt;br /&gt;
        list items = llParseString2List(shoppinglist, [&amp;quot;::&amp;quot;], []);&lt;br /&gt;
        integer i = 0;&lt;br /&gt;
        integer j = llGetListLength(items);&lt;br /&gt;
        for(;i &amp;lt; j; ++i)&lt;br /&gt;
        {&lt;br /&gt;
            list desc = llParseString2List(llList2String(items, i), [&amp;quot;#&amp;quot;], []);&lt;br /&gt;
            if(llGetListLength(desc) &amp;gt; 1)&lt;br /&gt;
            {&lt;br /&gt;
                list types = llDeleteSubList(desc,0,0);&lt;br /&gt;
                llOwnerSay(&amp;quot;Item: &amp;quot;+ llList2String(desc, 0) + &amp;quot;  Type: &amp;quot; + llList2CSV(llDeleteSubList(types,-2,-1) + llDumpList2String(llList2List(types,-2,-1), &amp;quot; &amp;amp; &amp;quot;)));&lt;br /&gt;
            } else {&lt;br /&gt;
                llOwnerSay(&amp;quot;Item: &amp;quot;+ (string)desc);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|相关函数=&lt;br /&gt;
[[llParseStringKeepNulls]]&lt;br /&gt;
&lt;br /&gt;
[[llDumpList2String]]&lt;br /&gt;
&lt;br /&gt;
[[llCSV2List]]&lt;br /&gt;
&lt;br /&gt;
[[llList2CSV]]&lt;br /&gt;
|相关事件=&lt;br /&gt;
&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Ty</name></author>
		
	</entry>
</feed>