Ваше регулярное выражение содержит пробел, поэтому пробел удаляется до вызова string.Replace
.
string regie = @"([{}\(\)\^$&._%#!@=<>:;,~`'\’ \*\?\/\+\|\[\\\\]|\]|\-)";
^ here
Удалите его из регулярного выражения, и ваш код должен делать то, что вы ожидаете:
string regie = @"([{}\(\)\^$&._%#!@=<>:;,~`'\’\*\?\/\+\|\[\\\\]|\]|\-)";