In a version that old, your options are pretty limited. Borrowing from this answer:
DECLARE @str varchar(255) = 'f,a,bcd,gd,er,ad,adsadc,...,.,,.,.';
SELECT CONCAT(
c.value('(/x/r[1]/text())[1]', 'sysname'), ',',
c.value('(/x/r[2]/text())[1]', 'sysname'), ',',
c.value('(/x/r[3]/text())[1]', 'sysname'), ',',
c.value('(/x/r[4]/text())[1]', 'sysname')
)
FROM
(
SELECT TRY_CONVERT(xml, CONCAT(
'<x><r><![CDATA[',
REPLACE(@str, ',', ']]></r><r><![CDATA['),
']]></r></x>'
)
)) AS t(c);
So, you could put this in an inline table-valued function:
CREATE FUNCTION dbo.GetFirstFourElements
(
@str varchar(255),
@sep char(1)
)
RETURNS TABLE
AS
RETURN (
SELECT FourElements = CONCAT(
c.value('(/x/r[1]/text())[1]', 'sysname'), @sep,
c.value('(/x/r[2]/text())[1]', 'sysname'), @sep,
c.value('(/x/r[3]/text())[1]', 'sysname'), @sep,
c.value('(/x/r[4]/text())[1]', 'sysname')
)
FROM
(
SELECT TRY_CONVERT(xml, CONCAT(
'<x><r><![CDATA[',
REPLACE(@str, @sep, ']]></r><r><![CDATA['),
']]></r></x>'
)
)) AS t(c)
);
And then either call it against a variable:
DECLARE @str varchar(255) = 'f,a,bcd,gd,er,ad,adsadc,...,.,,.,.';
SELECT FourElements
FROM dbo.GetFirstFourElements(@str, ',') AS f;
Or against a table:
DECLARE @t table(str varchar(255));
INSERT @t VALUES('a,b,c,d,e,f,g'),
('f,a,bcd,gd,er,ad,adsadc,...,.,,.,.');
SELECT t.str, f.FourElements
FROM @t AS t
CROSS APPLY dbo.GetFirstFourElements(t.str, ',') AS f;
Working example in this fiddle (except that is shown in SQL Server 2014, since even they don't support ancient versions of SQL Server anymore).
Given the new information ("I can't use user-defined functions, and I don't have any tables"), here's how you can do this from a variable, without a function, and no tables:
DECLARE @str varchar(255) = 'f,a,bcd,gd,er,ad,adsadc,...,.,,.,.';
SELECT FourElements = CONCAT(
c.value('(/x/r[1]/text())[1]', 'sysname'), ',',
c.value('(/x/r[2]/text())[1]', 'sysname'), ',',
c.value('(/x/r[3]/text())[1]', 'sysname'), ',',
c.value('(/x/r[4]/text())[1]', 'sysname')
)
FROM
(
SELECT TRY_CONVERT(xml, CONCAT(
'<x><r><![CDATA[',
REPLACE(@str, ',', ']]></r><r><![CDATA['),
']]></r></x>'
)
)) AS t(c);