File tree Expand file tree Collapse file tree
backend/src/main/java/com/temp/paste/temp_paste/service Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -50,15 +50,14 @@ public String censor(String text) {
5050 }
5151
5252 String censoredText = text ;
53- // Работаем с копией в нижнем регистре только для проверки .contains()
53+ // Приводим весь текст к нижнему регистру ОДИН РАЗ для быстрой проверки
5454 String lowerText = text .toLowerCase ();
5555
5656 for (String word : forbiddenWords ) {
57- // Сначала быстро проверяем, есть ли вообще это слово в тексте
57+ // word уже в нижнем регистре (мы сделали это в loadWords)
5858 if (lowerText .contains (word )) {
59- // Если есть, заменяем его в оригинальном тексте, игнорируя регистр
60- // (?i) — флаг case-insensitive, Pattern.quote — защита от спецсимволов
61- censoredText = censoredText .replaceAll ("(?i)" + Pattern .quote (word ), "***" );
59+ // (?iu) -> i = ignore case, u = unicode case (обязательно для русского языка)
60+ censoredText = censoredText .replaceAll ("(?iu)" + Pattern .quote (word ), "***" );
6261 }
6362 }
6463 return censoredText ;
You can’t perform that action at this time.
0 commit comments