Специальная проблема характера в регулярном выраженииC#

Место общения программистов C#
Anonymous
Специальная проблема характера в регулярном выражении

Сообщение Anonymous »

Я пытаюсь создать регулярное выражение на основе списка запрещенных слов. Это будет сравниваться с строкой, чтобы найти запрещенные слова. Нельзя найти подлонги. в виагре; "v! @gra" < /p>

Так что у меня есть строка, я ищу ее для слова. Затем я пишу регулярное выражение, используя границу слова, чтобы включить все возможные другие символы. Я понимаю с границами слов, что он не найдет обычного персонажа таким же образом, но я не уверен в хорошей альтернативе.string ReviewText = "$uck";
string BannedWord = "suck";
string regexInput = "";

if (BannedWord .Contains("s") || BannedWord .Contains("S"))
{
BannedWord = BannedWord .Replace("s", "[$s25]");
BannedWord = BannedWord .Replace("S", "[$s25]");
}

regexInput = @"\b" + bannedWord + @"\b";
< /code>

, который должен создать \ b [$ s25] uck \ b < /code>. < /p>

Я понимаю, что это плохо, поскольку он использует границу слов на специальном характере- но я не уверен, как сделать то, что я хочу для всех нормальных символов. Чтобы решить эту проблему? Я попробовал все, что я могу придумать. Теперь мне просто нужно, чтобы он также работал в случаях особых персонажей.

Подробнее здесь: https://stackoverflow.com/questions/270 ... expression

Вернуться в «C#»