Злоупотребление заглавными буквами. Варианты предотвращения.

SiZE

Новичок
Предлагаю подумать над решением моей проблемы. У меня есть форум, с туевой горой пользователей, некоторые из которых злоупотребляют заглавными. В IPB есть два варианта защиты:
1. Удалять множество восклицательных/вопросительных знаков в названиях тем
2. Замена заглавных на строчные: НАЖМИТЕ СЮДА будет заменено на Нажмите Cюда.

Во втором случае темы начинают выглядеть как хромой заяц, поэтому хочу от этого отказаться.

У меня пока только одна идея, вычислить соотношение заглавных к строчным. Тогда можно будет и аббревиатуры указывать и заголовки вроде "МОЯ КРУТАЯ ТЕМА" не пройдут.

PHP:
$str = "Злоупотребление заглавными буквами. Варианты предотвращения.";
$upper_count = preg_match_all('#[А-ЯЁ]{1}#u', $str);
$lower_count = preg_match_all('#[а-яё]{1}#u', $str);
$rate = $upper_count / $lower_count;
if ( $rate > 0.3 ) {
  // error
}
Какие-то еще стоит добавить варианты проверки?
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Надо просто в правилах форума написать, что так делать нельзя и выдавать бан.

PS: Не надо это создавать в теории
 

fixxxer

К.О.
Партнер клуба
Ну, допустим, если заглавных букв больше $rate и длина темы превышает $length, делать что-то вроде join('. ', array_map(function($token) {return ucfirst(strtolower($token)); }, preg_split('/\.\s+/', $subject))); Если очень хочется.
 

SiZE

Новичок
Ну, допустим, если заглавных букв больше $rate и длина темы превышает $length, делать что-то вроде join('. ', array_map(function($token) {return ucfirst(strtolower($token)); }, preg_split('/\.\s+/', $subject))); Если очень хочется.
Я примерно так делал первый раз, все предложения с заглавной, остальные строчной. Но пользователи негодовали. :) Особенно когда имена собственные со строчной.
 

SiZE

Новичок
Надо просто в правилах форума написать, что так делать нельзя и выдавать бан.
Бан у нас только для ботов и спамеров. Да и иногда так даже пишут завсегдатаи, которых банить рука не поднимается и повод не тот. :))) Просто люди по разному относятся к орфографии и пунктуации. Ведь это же замечательно если можно облегчить жизнь модераторам, которым каждый раз не придется исправлять заголовки
 

ksnk

прохожий
Надо сделать инструмент для модераторов, который самим модератором и управляется. Кнопка "сделай мне красиво"...
 

С.

Продвинутый новичок
Если прописных было больше половины, я просто переводил все в нижний регистр, Ибо нефиг .
 

fixxxer

К.О.
Партнер клуба
Я примерно так делал первый раз, все предложения с заглавной, остальные строчной. Но пользователи негодовали. :) Особенно когда имена собственные со строчной.
Так я предлагаю только при условии что капса много. Сами виноваты.
 
  • Like
Реакции: SiZE

AmdY

Пью пиво
Команда форума
Капс это вроде повышения голоса, привлечения внимания, ну и арбревиатуры всякие, совсем запрещать его не стоит. Джаваскриптом проверил соотношение больших букв к маленьким, ругнулся, но не надо мешать отправлять сообщение, а дальше сам себе злобный Буратино, придут за его душой модераторы.
 
  • Like
Реакции: SiZE

AnrDaemon

Продвинутый новичок
Согласен с @c0dex, не надо выдумывать технические средства для решения социальных проблем.
 
Сверху