Фильтр правок

Фильтры правок (обсуждение) — это автоматизированный механизм проверок правок участников.
(Список | Последние изменения фильтров | Изучение правок | Журнал срабатываний)
Перейти к навигации Перейти к поиску

Различия между версиями

ЭлементВерсия участника Alex Smotrov от 06:29, 23 января 2011Версия участника Alex Smotrov от 14:37, 19 марта 2011
Основные сведения
Примечания:
Подряд идущий одинаковый текст: обычно множественный copy/paste нескольких слов для вандализма. Или слишком длинное слово без пробелов.
Подряд идущий одинаковый текст: обычно множественный copy/paste нескольких слов для вандализма. Или слишком длинное слово без пробелов.


upd: + '<math>': ложное срабатывание Special:AbuseLog/407288
upd: ложное срабатывание Служебная:AbuseLog/472951
Условия фильтрации
Условия:
(документация)
action == 'edit' &
action == 'edit' &
(!'user' in user_groups | user_editcount < 10) &
(!'user' in user_groups | user_editcount < 10) &
(old_size > 0 | article_namespace > 0 | length(new_text) > 150) &
(old_size > 0 | article_namespace > 0 | length(new_text) > 150) &
!added_links & count('[[', added_lines) < 4 &
!added_links & count('[[', added_lines) < 4 &
(
(
  (long := "[a-zа-я\d]{40}";
  (long := "[a-zа-я\d]{40}";
   lcase(added_lines) rlike long  
   lcase(added_lines) rlike long  
   &! lcase(removed_lines) rlike long
   &! lcase(removed_lines) rlike long
   &! contains_any(lcase(new_wikitext),
   &! contains_any(lcase(new_wikitext),
  'кислот','щелоч','лекарств','химич','hash','хеш','<math>')
  'кислот','щелоч','лекарств','химич','hash','хеш','<math>')
   &! contains_any(lcase(added_lines),'[[image:','[[file:','.jpg','http://')
   &! contains_any(lcase(added_lines),'[[image:','[[file:','.jpg','http://')
  )
  )
|
|
  (m1 := "([а-яА-Я]{1,3})\1{5}";
  (m1 := "([а-яА-Я]{1,3})\1{5}";
   m2 := "([^_:*'&~|=}{a-fA-F\d-]{1,3})\1{9}";
   m2 := "([^_:*'&~|=}{a-fA-F\d-]{1,3})\1{9}";
   m3 := "([^_:*'&~|=}{<>-]{4,30})\1{3}";
   m3 := "([^_:*'&~|=}{<>-]{4,30})\1{3}";
   add := rmwhitespace(added_lines);
   add := rmwhitespace(added_lines);
  (add rlike m1 &! rmwhitespace(removed_lines) rlike m1)|
  (add rlike m1 &! rmwhitespace(removed_lines) rlike m1)|
  (add rlike m2 &! rmwhitespace(removed_lines) rlike m2)|
  (add rlike m2 &! rmwhitespace(removed_lines) rlike m2)|
  (add rlike m3 &! rmwhitespace(removed_lines) rlike m3  
  (add rlike m3 &! rmwhitespace(removed_lines) rlike m3  
   &! (added_lines contains '\n{|' & added_lines contains '\n|}')
   &! (added_lines contains '\n{|' & added_lines contains '\n|}')
   & rcount('(!![^!]|\|\|[^|])', add) < 3
   & rcount('(!![^!]|\|\|[^|])', add) < 3
   &  count('\n!', added_lines) < 3
   &  count('\n!', added_lines) < 3
   )
   )
  )
  )
)
)
& ! 'begin_of_the_skype_highlighting' in added_lines
& ! 'begin_of_the_skype_highlighting' in added_lines
& ! contains_any(article_text,'Климат Москвы')
& ! contains_any(article_text,'Климат Москвы')
& ! contains_any(new_wikitext,'самое длинное слово')