Hi,
Try This....
DECLARE @Test TABLE(id int, [desc] varchar(1000))
DECLARE @ReplaceStr VARCHAR(30)='cast(5679 as int)'
INSERT INTO @Test(id,[desc])
VALUES(1, ' val(5679) from cdetail'),(2, ' val(idsk) from exide ')
SELECT id, [desc],
REPLACE([desc],(SUBSTRING([desc],CHARINDEX('val(',[desc],1),(CHARINDEX(')',[desc],1)-CHARINDEX('val(',[desc],1))+1)),@ReplaceStr) 'RequiredDesc'
FROM @test
-- Note : If only one val() then only it will work :-)
Regards,
GVPrabu