[dba-VB] SPAM-LOW: Re: C# replace a special character

Hunnicutt, Jay E. (Civ) Jay.Hunnicutt at med.navy.mil
Wed Oct 21 09:25:58 CDT 2009


John,
	If you make it a SQL Scalar function you can use it to strip
characters for select, Update and insert statements as needed. Makes it
a little easier to use as well as reusable.


CREATE FUNCTION F_DropSpecChar 
(
	-- Add the parameters for the function here
	@S varchar(100)

)
RETURNS varchar(100)
AS
BEGIN
	-- Declare the return variable here
	DECLARE @Result varchar(100)
	DECLARE @i INTEGER 

select @i = patindex('%[^a-zA-Z0-9 ]%', @s)
	while @i > 0
	begin
		select @s = replace(@s, substring(@s, @i, 1), '')
		select @i = patindex('%[^a-zA-Z0-9 ]%', @s)
	end


	SELECT @Result = @S

	-- Return the result of the function
	RETURN @Result

END
GO

Query:
select dbo.F_DropSpecChar('qh*(*^&$^1234')

Returns:
qh1234

 


Jay Hunnicutt



-----Original Message-----
From: dba-vb-bounces at databaseadvisors.com
[mailto:dba-vb-bounces at databaseadvisors.com] On Behalf Of jwcolby
Sent: Wednesday, October 21, 2009 9:56 AM
To: Discussion concerning Visual Basic and related programming issues.
Subject: Re: [dba-VB] SPAM-LOW: Re: C# replace a special character

Mark,

This performs an update on an existing column in an existing table
simply by specifying the tablename / column name?

John W. Colby
www.ColbyConsulting.com


Mark Breen wrote:
> Hello John,
> I used the following SQL today, and it works a treat, in my case, I 
> wanted to exclude all except alphas, I know that it is not C#, and I 
> know you may prefer C# as practice, so if it is no useful, just bin
it.
> 
> I got the code from this site, if you have a look, there is a little 
> more there that you may be able to make use of.
> 
> Thanks to Nigel Rivett.
> 
> http://www.nigelrivett.net/SQLTsql/RemoveNonNumericCharacters.html
> 
> <snip>
> 
> WHILE @@rowcount > 0
>     UPDATE  tablename
>     SET     columnname = REPLACE(columnname,
>                                     SUBSTRING(columnname,
>
PATINDEX('%[^a-zA-Z0-9]%',
>                                                        columnname),
1), '')
>     WHERE   PATINDEX('%[^a-zA-Z0-9]%', columnname) <> 0
> 
> </snip>
> 
> 
> Mark
> 
> 
> 2009/10/20 Charlotte Foust <cfoust at infostatsystems.com>
> 
>> Except the for the semicolon, that's the way to do it in VB.Net too.
>>
>> Charlotte Foust
>>
>> -----Original Message-----
>> From: dba-vb-bounces at databaseadvisors.com
>> [mailto:dba-vb-bounces at databaseadvisors.com] On Behalf Of Gustav 
>> Brock
>> Sent: Tuesday, October 20, 2009 9:22 AM
>> To: dba-vb at databaseadvisors.com
>> Subject: Re: [dba-VB] C# replace a special character
>>
>> Hi John
>>
>> You should be able to use the Replace method directly on your string 
>> holding the line or the file:
>>
>>  theStringToCleanUp.Replace(((char)26).ToString(),"");
>>
>> like:
>>
>>  string contents = File.ReadAllText(path);  File.WriteAllText(path, 
>> contents.Replace(((char)26).ToString(),""));
>>
>> /gustav
>>
>>
>> _______________________________________________
>> dba-VB mailing list
>> dba-VB at databaseadvisors.com
>> http://databaseadvisors.com/mailman/listinfo/dba-vb
>> http://www.databaseadvisors.com
>>
>>
> _______________________________________________
> dba-VB mailing list
> dba-VB at databaseadvisors.com
> http://databaseadvisors.com/mailman/listinfo/dba-vb
> http://www.databaseadvisors.com
> 
> 
_______________________________________________
dba-VB mailing list
dba-VB at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/dba-vb
http://www.databaseadvisors.com




More information about the dba-VB mailing list