Специальная проблема характера в регулярном выражении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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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