DECLARE @InputString VARCHAR(1000) = '7What the 789hell is 78 going on here dshf 78'
DECLARE @OutputString VARCHAR(1000) = ''
SELECT
@OutputString = @OutputString +
CASE
WHEN Number = 1 THEN UPPER(SUBSTRING(@InputString,Number,1))
WHEN SUBSTRING(@InputString,Number-1,1) = '' THEN UPPER(SUBSTRING(@InputString,Number,1))
ELSE
LOWER(SUBSTRING(@InputString,Number,1))
END
FROM
(
SELECT DISTINCT Number
FROM MASTER..SPT_VALUES N
WHERE Number > 0 AND Number < LEN(@InputString)
)u
SELECT @OutputString Outputs
GO
DECLARE @String VARCHAR(1000) = '7what the 789hell is 78 going on here dshf 78'
DECLARE @Position INT = -1
SELECT @String = STUFF(LOWER(@String),1,1,UPPER(LEFT(@String,1)))
SELECT @Position = PATINDEX('%[^A-Za-z0-9''][a-z]%',@String COLLATE Latin1_General_Bin)
WHILE @Position > 0
SELECT @String = STUFF(@String,@Position,2,UPPER(SUBSTRING(@String,@Position,2))),
@Position = PATINDEX('%[^A-Za-z0-9''][a-z]%',@String COLLATE Latin1_General_Bin)
SELECT @String
DECLARE @InputString VARCHAR(1000) = '7What the 789hell is 78 going on here dshf 78'
DECLARE @OutputString VARCHAR(1000) = ''
SELECT
@OutputString = @OutputString +
CASE
WHEN Number = 1 THEN UPPER(SUBSTRING(@InputString,Number,1))
WHEN SUBSTRING(@InputString,Number-1,1) = '' THEN UPPER(SUBSTRING(@InputString,Number,1))
ELSE
LOWER(SUBSTRING(@InputString,Number,1))
END
FROM
(
SELECT DISTINCT Number
FROM MASTER..SPT_VALUES N
WHERE Number > 0 AND Number <= LEN(@InputString)
)u
SELECT @OutputString Outputs
GO
Open in new window