Code archives/Miscellaneous/Yet Another String to Array Routine - BMX

This code has been declared by its author to be Public Domain code.

Download source code

Yet Another String to Array Routine - BMX by altitudems2005
Yes, another way to split a string. Should be very fast. I tried to make it as simple as possible. There are two separate functions; one for "Int Arrays" and one for "String Arrays".
Function StringToIntArray:Int [] (_String:String, _Delimiter:String)
	Local TempArray:Int [1]
	Local TempString:String
	While _String.Find(_Delimiter) <> -1
		TempString = _String[.._String.Find(_Delimiter)]
		_String = _String[TempString.Length+1..]
		TempArray[TempArray.Length - 1] = Int(TempString)
		TempArray = TempArray[..TempArray.Length+1]
		Flushmem
	Wend
	TempString = _String
	TempArray[TempArray.Length - 1] = Int(TempString)
	Return TempArray
End Function

Function StringToStringArray:String [] (_String:String, _Delimiter:String)
	Local TempArray:String [1]
	Local TempString:String
	While _String.Find(_Delimiter) <> -1
		TempString = _String[.._String.Find(_Delimiter)]
		_String = _String[TempString.Length + 1..]
		TempArray[TempArray.Length - 1] = TempString.Trim()
		TempArray = TempArray[..TempArray.Length + 1]
		Flushmem
	Wend
	TempString = _String
	TempArray[TempArray.Length - 1] = TempString.Trim()
	Return TempArray
End Function

Comments

None.

Code Archives Forum