I hope this will help;
Declare @StringInput varchar(100)
Declare @v-2 varchar(100)
Declare @v1 varchar(100)
Set @StringInput = '199:141,3,5,7,4:56,43,58,5:34,67r,234'
Declare @OutputTable TABLE ( [String1] VARCHAR(10),[String2] VARCHAR(10))
Declare C1 Cursor for Select [value] from dbo.fnSplit(@StringInput,',')
Open C1
Fetch Next from C1 into @v-2
While @@Fetch_Status = 0
begin
if CharIndex(':',@v) > 0
begin
Insert into @OutputTable
Select Left(@v,CharIndex(':',@v)-1),Right(@v,Len(@v) - CharIndex(':',@v))
Set @v1 = Left(@v,CharIndex(':',@v)-1)
end
else
begin
Insert into @OutputTable
Select @v1,@v
end
Fetch Next from C1 into @v-2
end
Deallocate C1
Select * from @OutputTable