Bringing the Lovely VBScript Split Function into Delphi with a Custom Function
Posted by Daniel - 2,584 Views
It was a very old idea that I want to be able to perform the process carried out by the VBScript Split Function with Delphi. I had done it once but only capable of doing the split process with only one character as the delimiter, if I want to split a series of strings by two or more character as the delimiter, it didn’t work. This is the update, now I can perform the Split process with more than one character as the delimiter.
Before you get confused by what the Split Function does, let me explain: Split Function which is found as a built in function on the Visual Basic family languages will slice a strings based on a character delimiter specified and then will return an array containing each pieces from the slice process.
For example if you run this code:
Then the arrSplit will contains 3 elements:
arrSplit(0)=”a”
arrSplit(1)=”b”
arrSplit(2)=”c”
That kind of function does not available as a built-in function in Delphi (am I wrong?), but I want to be able to perform such process with Delphi so as usual, I created my own function, and here is the code:
var i : integer;
s : string;
arrString: TStringList;
begin
arrString := TStringList.Create;
s := ”;
i := 1;
repeat
begin
if Copy(source,i,Length(delimiter)) <> delimiter then
begin
s := s + Copy(source,i,1);
i := i + 1;
end
else
begin
arrString.Add(s);
s := ”;
i := i + Length(delimiter);
end;
end
until i > Length(source);
if s <> ” then arrString.Add(s);
result := arrString;
end;
MySplit Function will slice the string passed as the source parameter based on the delimiter character specified and then will return the resulting array as a stringlist.
A demo is included with this article. You can download the demo project then have it tested to see how the function works.
If you only need to split strings with one character as the delimiter, you may also consider the function from Zarko Gajic here - it’s neat and brilliant.
Download the demo project (8 KB)
The following posts are programmatically considered as related to the current post by YARPP Plugin:
- ConsoleProgressBar - Simple Progress Bar Function for your VB.Net Console Application
- FlatStyle Delphi controls (Flat controls for your Delphi application)
- Delphi SMSCodec (SMS Processing Component)
- PinoezProgramRun (Running external program from Delphi)
- An example: Using CPort Delphi Component to read data from your cellphone
2 Responses to “Bringing the Lovely VBScript Split Function into Delphi with a Custom Function”
Leave a Reply
Hi, my name is Daniel Nugraha, a single male live on an island called Java, Indonesia. This is the place for me to share my interest in computer programming.
-
Get my Full Feed Here
Comments - Thanks Guys :)
Rangga Kusuma: Gan, Tengkiu buat postingan yang sangat berguna. Kebetulan ada project utk bikin sms gateway, dan converter Agan sangat berguna utk...
Chuck Norton: I actually went ahead & bolted over to Justin’s Get The Image plugin here: http://justintadlock.com/ar...
Chuck Norton: Question: is it possible to insert something like [custfieldimg=”joice1.jpg,15 0,1:1″] into the actual templates instead of...
Therese Lachance: Hi, Any idea how to have ContuttoPDF fetch the correct page language?
tresloukadu: yo how did u fixed when the tags shows <? and it shows < “& l t ; ” ?? please send me an email.














April 24th, 2009 at 6:08 am
Interesting blog post. What would you say was the most important marketing factor?
October 21st, 2009 at 2:09 am
Hi
Thank you man
You Solve my Problem
God Bless
ali’s last blog post: تشیع علوی و تشیع صفوی