Замена Preg - рег требуется - PullRequest
0 голосов
/ 04 июня 2010

Поиск reg ex для обнуления (пустой) строки, если она содержит плохое слово.

    $string1 = "Ihatestackoverflow";
    $string2 = "I HaTe sackoverflow";
    $string3 = "1HaTestackoverflow";

    $badword = "hate";

# result
# string1 = "";
# string2 = "";
# string3 = "";

1 Ответ

2 голосов
/ 04 июня 2010
$regex = '#^.*?(hate).*$#ims';
$str = preg_replace($regex, '', $str);

Чтобы добавить больше "плохих слов", просто добавьте их в ():

$regex = '#^.*?(hate|anotherbadword|yetanother|etc).*$#ims';

Начальный ^ и конечный $ соответствуют полной строке. Параметр i предназначен для сопоставления без учета регистра. M включает многострочный режим (так что ^ и $ соответствуют всей строке, а не одной строке в ней). S включает DOTALL (поэтому. Также соответствует символам новой строки).

Вы могли бы

...