Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Slick way to remove special char
Message
From
26/03/2008 10:04:55
 
General information
Forum:
Microsoft SQL Server
Category:
SQL syntax
Miscellaneous
Thread ID:
01305645
Message ID:
01305656
Views:
7
>>I have a sp to remove special characters from an input string, and it works fine, but I am wondering if there is a slicker (is that a word?) way to do this. The code is:
>>
>>
>>ALTER PROCEDURE [dbo].[sRemoveSCW]
>>@StringIn VARCHAR(2000),
>>@StringOut VARCHAR(2000) OUTPUT
>>AS
>>BEGIN
>>	SET NOCOUNT ON;
>>
>>	SET @StringOut = REPLACE(@StringIn, '~', '')
>>	SET @StringOut = REPLACE(@StringOut, '`', '')
>>	SET @StringOut = REPLACE(@StringOut, '!', '')
>>	SET @StringOut = REPLACE(@StringOut, '@', '')
>>	SET @StringOut = REPLACE(@StringOut, '#', '')
>>	SET @StringOut = REPLACE(@StringOut, '$', '')
>>	SET @StringOut = REPLACE(@StringOut, '%', '')
>>	SET @StringOut = REPLACE(@StringOut, '^', '')
>>	SET @StringOut = REPLACE(@StringOut, '&', '')
>>	SET @StringOut = REPLACE(@StringOut, '*', '')
>>	SET @StringOut = REPLACE(@StringOut, '(', '')
>>	SET @StringOut = REPLACE(@StringOut, ')', '')
>>	SET @StringOut = REPLACE(@StringOut, '+', '')
>>	SET @StringOut = REPLACE(@StringOut, '=', '')
>>	SET @StringOut = REPLACE(@StringOut, '{', '')
>>	SET @StringOut = REPLACE(@StringOut, '}', '')
>>	SET @StringOut = REPLACE(@StringOut, '[', '')
>>	SET @StringOut = REPLACE(@StringOut, ']', '')
>>	SET @StringOut = REPLACE(@StringOut, '|', '')
>>	SET @StringOut = REPLACE(@StringOut, ';', '')
>>	SET @StringOut = REPLACE(@StringOut, ':', '')
>>	SET @StringOut = REPLACE(@StringOut, '<', '')
>>	SET @StringOut = REPLACE(@StringOut, '>', '')
>>	SET @StringOut = REPLACE(@StringOut, '?', '')
>>	SET @StringOut = REPLACE(@StringOut, ',', '')
>>	SET @StringOut = REPLACE(@StringOut, ' ', '')
>>	SET @StringOut = REPLACE(@StringOut, '/', '')
>>	SET @StringOut = REPLACE(@StringOut, '\', '')
>>	SELECT @StringOut
>>END
>>
>>
>>Any input or comments are appreciated!
>
>
>Just don't allow to users to write such chars.
>As Naomi said there is no CHRTRAN() function in SQL Server.
>You could try Igor Nikiforov's User-Defined string functions Transact-SQL Download #27115

Front end controls are, of course, a first line of defense, but I also like to build protection into the DB. I will take a look at Igor's functions. Thank you.
Thank You

Rollin Burr

Politicians and diapers have one thing in common. They should both be changed regularly, and for the same reason.
Previous
Reply
Map
View

Click here to load this message in the networking platform