Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Replace/Remove characters that do not match the Regular Expression (.NET)

I have a regular expression to validate a string. But now I want to remove all the characters that do not match my regular expression.

E.g.

regExpression = @"^([\w\'\-\+])"

text = "This is a sample text with some invalid characters -+%&()=?";

//Remove characters that do not match regExp.

result = "This is a sample text with some invalid characters -+";

Any ideas of how I can use the RegExpression to determine the valid characters and remove all the other ones.

Many thanks

like image 743
tif Avatar asked May 27 '11 15:05

tif


1 Answers

I believe you can do this (whitelist characters and replace everything else) in one line:

var result = Regex.Replace(text, @"[^\w\s\-\+]", "");

Technically it will produce this: "This is a sample text with some invalid characters - +" which is slightly different than your example (the extra space between the - and +).

like image 176
emfurry Avatar answered Nov 12 '22 01:11

emfurry