You could approach this either using regular expressions or directly. The direct method is not at all trivial however regular expressions just might do the trick;
Consider the following rather famous regex example.
\b(\w+)(\s+|$)\1
This will match doubled words
In your case you are looking to improve words with doubled character strings. consider \b(\w{4,})\1
This regular expression will find all words that have a doubling of 4 letters or more. You will need a little experimentation to get exactly what you want.
The following code takes care of the replacment.
string name="ThisThis is tested by noornoor";
Regex rx = new Regex (@"\b(\w{4,})\1");
string smallName = rx.Replace(name,"$1");
I would give this as a note of caution. Until you are absolutely certain that your regex is working perfectly, do not allow permanent alteration of your data in an automated way. From personal experience I have seen the results of trying to be a bit to clever with regex expressions. That said if you use strings a lot regular expressions are really nice to know.
Hope this helps
Ken