<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wiki.soldat.pl/index.php?action=history&amp;feed=atom&amp;title=XSplit</id>
		<title>XSplit - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.soldat.pl/index.php?action=history&amp;feed=atom&amp;title=XSplit"/>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=XSplit&amp;action=history"/>
		<updated>2026-05-26T02:29:59Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>https://wiki.soldat.pl/index.php?title=XSplit&amp;diff=179&amp;oldid=prev</id>
		<title>Freeman: Created page with &quot;===Snippet by DorkeyDear (Curt) and CurryWurst=== &lt;source lang=&quot;pascal&quot;&gt; function Explode(Source: string; const Delimiter: string): array of string; var   Position, DelLength,...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.soldat.pl/index.php?title=XSplit&amp;diff=179&amp;oldid=prev"/>
				<updated>2012-08-15T11:37:35Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;===Snippet by DorkeyDear (Curt) and CurryWurst=== &amp;lt;source lang=&amp;quot;pascal&amp;quot;&amp;gt; function Explode(Source: string; const Delimiter: string): array of string; var   Position, DelLength,...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;===Snippet by DorkeyDear (Curt) and CurryWurst===&lt;br /&gt;
&amp;lt;source lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
function Explode(Source: string; const Delimiter: string): array of string;&lt;br /&gt;
var&lt;br /&gt;
  Position, DelLength, ResLength: integer;&lt;br /&gt;
begin&lt;br /&gt;
  DelLength := Length(Delimiter);&lt;br /&gt;
  Source := Source + Delimiter;&lt;br /&gt;
  repeat&lt;br /&gt;
    Position := Pos(Delimiter, Source);&lt;br /&gt;
    SetArrayLength(Result, ResLength + 1);&lt;br /&gt;
    Result[ResLength] := Copy(Source, 1, Position - 1);&lt;br /&gt;
    ResLength := ResLength + 1;&lt;br /&gt;
    Delete(Source, 1, Position + DelLength - 1);&lt;br /&gt;
  until (Position = 0);&lt;br /&gt;
  SetArrayLength(Result, ResLength - 1);&lt;br /&gt;
end;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
This is Explode v2. There is a first version that was simply slower. Both of these were enspired by KeYDoN's XSplit. Explode, after many tests, definitely is faster. Soldat Forums topic may be found at http://forums.soldat.pl/index.php?topic=35698.0 and http://forums.soldat.pl/index.php?topic=27844.0&lt;br /&gt;
&lt;br /&gt;
===Snippet by KeYDoN===&lt;br /&gt;
&amp;lt;source lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
function XSplit(const Source: string; const Delimiter: string): tstringarray;&lt;br /&gt;
var&lt;br /&gt;
  i,x,d: integer;&lt;br /&gt;
  s: string;&lt;br /&gt;
begin&lt;br /&gt;
  d := Length(Delimiter);&lt;br /&gt;
  x := 0;&lt;br /&gt;
  i := 1;&lt;br /&gt;
  SetArrayLength(Result,1);&lt;br /&gt;
  while i &amp;lt;= Length(source) do begin&lt;br /&gt;
    s := Copy(Source,i,d);&lt;br /&gt;
    if s = Delimiter then begin&lt;br /&gt;
      Inc(i,d);&lt;br /&gt;
      Inc(x,1);&lt;br /&gt;
      SetArrayLength(result,x + 1);&lt;br /&gt;
    end else begin&lt;br /&gt;
      Result[x] := Result[x] + Copy(s,1,1);&lt;br /&gt;
      Inc(i,1);&lt;br /&gt;
    end;&lt;br /&gt;
  end;&lt;br /&gt;
end;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Freeman</name></author>	</entry>

	</feed>