1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Плагин [CHAT] MessageFilter - фильтруем базар, рынок и вокзал! [BukkitDev]

Тема в разделе "Неподтвержденные плагины", создана пользователем fromgate, 29 июн 2014.

  1. imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    В сущности - ничего, кроме упомянутого в основном посте - %word1%, %word2%. %word3%... - не работает.
     
  2. Dodique

    Dodique Активный участник Пользователь

    Баллы:
    61
    Понимаю, что возможно некропощу - но может кто подсказать: Как в этом плагине захватывать \w+ через регулярки, но при этом не захватывать то что идёт после нужного слова и, как бы, тоже учитывается в качестве слова? К примеру, есть у меня сообщение - "[Игрок Steve был телепортирован игроком Herobrine]", и хочу я его изменить на "Телепортировали игрока Herobrine!" но в итоге получается "Телепортировали игрока Herobrine]!" как не захватывать эту злополучную "]"?
    Пробовал через [\w\-]+(?=]), но тогда вообще не пускает.
     
  3. imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    А какую регулярку ты сейчас используешь?
     
  4. Dodique

    Dodique Активный участник Пользователь

    Баллы:
    61
    Извиняюсь, забыл упомянуть - если добавить в конце "\]", то будет пускать, но весь смысл регулярки теряется - исключить символ "]". Регулярка [\w\-]+(?=]) с \] на конце пишет тоже самое, что и просто \w+\] (Телепортировали игрока Herobrine]!).
     
  5. imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Боюсь, проблема в том, что регулярное выражение служит лишь в качестве проверки на соответствие, а %wordN% в свою очередь просто берет все куски текста, разделяя те пробелом. Таким образом В тексте "Привет, мой дорогуша!" %word1% = "Привет,", %word2% = "мой", %word3% = "дорогуша!" - то есть все знаки вокруг слов сохранились.
     

Поделиться этой страницей