ermouth: (ang)
[personal profile] ermouth
В рамках одного проекта вот родилось, хоть и не было заявлено как требование. Регэксп-индикатор наличия нецензурной лексики, а попросту мата

/\w{0,5}[хx]([хx\s\!@#\$%\^&*+-\|\/]{0,6})[уy]([уy\s\!@#\$%\^&*+-\|\/]{0,6})[ёiлeеюийя]\w{0,7}|\w{0,6}[пp]([пp\s\!@#\$%\^&*+-\|\/]{0,6})[iие]([iие\s\!@#\$%\^&*+-\|\/]{0,6})[3зс]([3зс\s\!@#\$%\^&*+-\|\/]{0,6})[дd]\w{0,10}|[сcs][уy]([уy\!@#\$%\^&*+-\|\/]{0,6})[4чkк]\w{1,3}|\w{0,4}[bб]([bб\s\!@#\$%\^&*+-\|\/]{0,6})[lл]([lл\s\!@#\$%\^&*+-\|\/]{0,6})[yя]\w{0,10}|\w{0,8}[её][bб][лске@eыиаa][наи@йвл]\w{0,8}|\w{0,4}[еe]([еe\s\!@#\$%\^&*+-\|\/]{0,6})[бb]([бb\s\!@#\$%\^&*+-\|\/]{0,6})[uу]([uу\s\!@#\$%\^&*+-\|\/]{0,6})[н4ч]\w{0,4}|\w{0,4}[еeё]([еeё\s\!@#\$%\^&*+-\|\/]{0,6})[бb]([бb\s\!@#\$%\^&*+-\|\/]{0,6})[нn]([нn\s\!@#\$%\^&*+-\|\/]{0,6})[уy]\w{0,4}|\w{0,4}[еe]([еe\s\!@#\$%\^&*+-\|\/]{0,6})[бb]([бb\s\!@#\$%\^&*+-\|\/]{0,6})[оoаa@]([оoаa@\s\!@#\$%\^&*+-\|\/]{0,6})[тnнt]\w{0,4}|\w{0,10}[ё]([ё\!@#\$%\^&*+-\|\/]{0,6})[б]\w{0,6}|\w{0,4}[pп]([pп\s\!@#\$%\^&*+-\|\/]{0,6})[иeеi]([иeеi\s\!@#\$%\^&*+-\|\/]{0,6})[дd]([дd\s\!@#\$%\^&*+-\|\/]{0,6})[oоаa@еeиi]([oоаa@еeиi\s\!@#\$%\^&*+-\|\/]{0,6})[рr]\w{0,12}/i

Неидеальный, каэш, но в целом очень приличный. 

Date: 2014-08-06 08:54 pm (UTC)
From: [identity profile] morfizm.livejournal.com
Не ловит жопу, зато ловит слово потреблять. Незачёт :)

Date: 2014-08-06 09:03 pm (UTC)
From: [identity profile] ermouth.livejournal.com
Жопа – не мат. Про ложноположительное на потреблять – знаю. Как и про ложноотрицательное на пu3да, например )

Заметь, в моей картине мира есть слово «неидеальный» – а твоей это «незачёт».
(screened comment)

Date: 2014-08-06 09:19 pm (UTC)
From: [identity profile] ermouth.livejournal.com
Первый аргумент хорош, поэтому я поправил логику (но не регэксп), больше оно на потреблять и аналоги не ругается.

Второй аргумент слабый, любое обсуждение – это клики, а слишком далеко это обсуждение зайти не может, нет предмета для.

Date: 2014-08-07 03:00 am (UTC)
From: [identity profile] morfizm.livejournal.com
Вижу, починено.

Date: 2014-08-06 09:21 pm (UTC)
From: [identity profile] ermouth.livejournal.com
а, и да, на сервере результат проверяется тем же манифестом, что рисует форму – то-есть на сервере тоже валидация, конечно. это та самая технология, которая появилась после того, как ты навёл меня на HoTT.

ещё раз спасибо.

Date: 2014-08-07 03:00 am (UTC)
From: [identity profile] morfizm.livejournal.com
Пожалуйста! Только я не понял, за что. Напомни мне, что такое НоТТ.

Date: 2014-08-07 03:24 am (UTC)
From: [identity profile] ermouth.livejournal.com
http://ermouth.livejournal.com/604047.html, это ты про книжку по математике, полностью сделанную на гитхабе, как про курьёз написал. А я эту книжку прочитал )

Date: 2014-08-11 04:47 am (UTC)
From: [identity profile] morfizm.livejournal.com
Да, вспомнил теперь. Ты мегакрут, что *прочёл* и *понял* эту книжку. Я её просмотрел, и мне даже страшно к ней подступиться :)

Date: 2014-08-06 10:43 pm (UTC)
From: [identity profile] maksim-mat1981.livejournal.com
мудень, ебу, не ловит; ну «мудень» можно сказать и не мат, а вот с «ебу» недоработка )

Date: 2014-08-06 10:53 pm (UTC)
From: [identity profile] ermouth.livejournal.com
Про трёхбуквенное – не ловится очень много форм, они распространённые окончания и прямое их введение в регэксп либо чрезвычайно его усложняет, либо даёт слишком много false-positive.

Вероятно, это будет учтено, но уже не регэкспом.

Date: 2014-08-07 09:20 am (UTC)
From: [identity profile] a-bishop.livejournal.com
подчёркивает "пидарасы", но не подчёркивае "ёбаные суки" :)

Date: 2014-09-05 12:32 pm (UTC)
From: [identity profile] sintvantenos.livejournal.com
Только сейчас пост прочел, решил проверить)
Собсно вот:
Image

Date: 2016-03-04 04:46 am (UTC)
From: [identity profile] juan-gandhi.livejournal.com
гениально

Date: 2016-03-04 10:16 am (UTC)
From: [identity profile] ermouth.livejournal.com
ггг это поделка на коленке есчо, это на случай если ваше «гениально» внезапно было не сарказм )

Profile

ermouth: (Default)
ermouth

November 2021

S M T W T F S
 123456
78910111213
14151617181920
21 222324252627
282930    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 2nd, 2026 03:03 pm
Powered by Dreamwidth Studios