Revision Difference
string.Explode#511990
<function name="Explode" parent="string" type="libraryfunc">⤶
<description>⤶
Splits a string up wherever it finds the given separator.⤶
⤶
This is the reverse of <page>string.Implode</page>.⤶
</description>⤶
<realm>Shared and Menu</realm>⤶
<file line="81">lua/includes/extensions/string.lua</file>⤶
<args>⤶
<arg name="separator" type="string">The string will be separated wherever this sequence is found.</arg>⤶
<arg name="str" type="string">The string to split up.</arg>⤶
<arg name="use_patterns" type="boolean">Set this to true if your separator is a [pattern](/gmod/Patterns).</arg>⤶
</args>⤶
<rets>⤶
<ret name="" type="table">Exploded string as a numerical sequential table.</ret>⤶
</rets>⤶
</function>⤶
⤶
<example>⤶
<description>Splits a sentence into a table of the words in it.</description>⤶
<code>⤶
local sentence = "hello there my name is Player1"⤶
local words = string.Explode( " ", sentence )⤶
PrintTable( words )⤶
</code>⤶
<outputfixedwidth>Fixed width</outputfixedwidth>⤶
<output>⤶
1 = hello⤶
2 = there⤶
3 = my⤶
4 = name⤶
5 = is⤶
6 = Player1⤶
</output>⤶
⤶
</example>⤶
⤶
⤶
<example>⤶
<description>Uses Explode to sort through words that a player says.</description>⤶
<code>⤶
hook.Add( "PlayerSay", "GiveHealth", function( ply, text )⤶
local playerInput = string.Explode( " ", text )⤶
⤶
if ( playerInput[1] == "!givehealth" ) then ⤶
⤶
if ( tonumber( playerInput[2] ) ) then⤶
⤶
ply:SetHealth( tonumber( playerInput[2] ) )⤶
⤶
print( ply:Nick() .. " set their health to " .. playerInput[2] )⤶
⤶
end⤶
⤶
end⤶
⤶
end)⤶
</code>⤶
<outputfixedwidth>Fixed width</outputfixedwidth>⤶
<output>Player1 set their health to 100.</output>⤶
⤶
</example>