Руководство по регулярным выражениям (Regex): различия между версиями

imported>Tizer7
Нет описания правки
мНет описания правки
 
(не показано 8 промежуточных версий 2 участников)
Строка 1: Строка 1:
{{wip
{{Needsrevision|reason = Мы уже давно используем ТГчат, в нём регулярки работают немного иначе}}
|assign = Tizer7}}
Regex (сокр. от Regular expressions - Регулярные выражения) - это способ поиска подтекста в тексте. Он позволит вам искать более сложные выражения и даст вам больше свободы в выборе того, что выделить. Однако он немного сложен для полного понимания за один раз. Смотрите ниже примеры использования строк regex. По умолчанию в игре Regex нечувствителен к регистру.
Regex (сокр. от Regular expressions - Регулярные выражения) - это способ поиска подтекста в тексте. Он позволит вам искать более сложные выражения и даст вам больше свободы в выборе того, что выделить. Однако он немного сложен для полного понимания за один раз. Смотрите ниже примеры использования строк regex. По умолчанию в игре regex нечувствителен к регистру.


Полезным инструментом для тестирования вашей regex-строки является [https://regex101.com/ '''этот сайт.''']
Полезным инструментом для тестирования вашей regex-строки является [https://regex101.com/ '''этот сайт.''']
==Настройка==
==Настройка==
Чтобы открыть окно настроек Regex нажмите шестеренку в окне чата. И в появившемся списке кликните '''highlight string.'''
Чтобы открыть окно настроек Regex нажмите шестеренку в окне чата. И в появившемся списке кликните <code>Highlight string</code>'''.'''
[[Файл:Regex1.png|без|обрамить|Как добраться до Regex]]
[[Файл:Regex1.png|без|обрамить|Как добраться до Regex]]
Игра предоставляет вам два способа использования системы регулярных выражений.
Игра предоставляет вам два способа использования системы регулярных выражений.
Строка 11: Строка 10:
[[Файл:Regex2.png|мини|591x591пкс|Пример простого ввода]]
[[Файл:Regex2.png|мини|591x591пкс|Пример простого ввода]]


Убедитесь, что чекбокс '''Enable Regex''' выключен. И просто вводите, в одно из полей, через пробел, желаемые слова, которые хотите выделить в чате. Этот способ наиболее элементарный. Но имеет недостатки.  
Убедитесь, что чекбокс <code>Enable Regex</code> выключен. И просто вводите, в одно из полей, через пробел, желаемые слова, которые хотите выделить в чате. Этот способ наиболее элементарный. Но имеет недостатки.  


Существует непреодолимый недостаток системы Regex, на текущий момент, это выделение части букв из других слов. Например введя слово '''маг,''' он будет выделять часть слова '''<mark>Маг</mark>омед, бу<mark>маг</mark>а''' и любых других слов содержащих указанную последовательность букв. А также чувствителен к орфографическим ошибкам. Если вы зададите для выделения слово '''детектив,''' а в чате будет написано '''декектив,''' то оно выделено не будет.  
Существует непреодолимый недостаток системы Regex, на текущий момент, это выделение части букв из других слов. Например введя слово '''маг,''' он будет выделять часть слова '''<mark>Маг</mark>омед, бу<mark>маг</mark>а''' и любых других слов содержащих указанную последовательность букв. А также чувствителен к орфографическим ошибкам. Если вы зададите для выделения слово '''детектив,''' а в чате будет написано '''декектив,''' то оно выделено не будет.  
Строка 18: Строка 17:


===Сложный способ===
===Сложный способ===
Сложный способ подразумевает использование синтаксиса регулярных выражений. Все доступные регулярные выражения представлены в справочнике [https://www.byond.com/docs/ref/#/{notes}/regex '''BYOND Regex''']  
Сложный способ подразумевает использование синтаксиса регулярных выражений. Все доступные регулярные выражения представлены в справочнике [https://www.byond.com/docs/ref/#/{notes}/regex '''BYOND Regex''']. Также вы можете посмотреть на [https://www.youtube.com/results?search_query=regex '''YouTube руководства по Regex'''], что существенно упростит понимание нижеописанного.


Ниже будут приведены полезные для игры примеры.
Ниже будут приведены полезные для игры примеры.
Строка 39: Строка 38:


==== Таблица готовых Regex выражений ====
==== Таблица готовых Regex выражений ====
[[Category:Guides]]
[[Category:Guides]]
{| class="wikitable" style="text-align: center;"
{| class="wikitable" style="text-align: center;"
|+Таблица с регулярными выражениями для наиболее часто употребляемых слов
|+Таблица с регулярными выражениями для наиболее часто употребляемых слов
Строка 53: Строка 50:
!'''вампир'''
!'''вампир'''
|в[^ ]+п[^ ]+р
|в[^ ]+п[^ ]+р
|-
!
|
|}
|}


===Настройка цвета выделения===
===Настройка цвета выделения===
В нижней части окна предоставлена возможность изменить цвет выделения слов. Ввод цвета производится в [[google:цвет+шестнадцатеричный+код|'''шестнадцатеричной системе (HEX)''']]. Цвета можно подобрать по этой [[ColorPalette|'''ссылке''']].
В нижней части окна предоставлена возможность изменить цвет выделения слов. Ввод цвета производится в [[google:цвет+шестнадцатеричный+код|'''шестнадцатеричной системе (HEX)''']]. Цвета можно подобрать по этой [[ColorPalette|'''ссылке''']].
[[Категория:Руководства]]

Текущая версия от 03:18, 5 июня 2024

Newscaster.pngЭта страница должна быть пересмотрена/обновленаNewscaster.png
Эта статья содержит устаревшие данные, необходимо сверить и обновить информацию.
Причина: Мы уже давно используем ТГчат, в нём регулярки работают немного иначе


Regex (сокр. от Regular expressions - Регулярные выражения) - это способ поиска подтекста в тексте. Он позволит вам искать более сложные выражения и даст вам больше свободы в выборе того, что выделить. Однако он немного сложен для полного понимания за один раз. Смотрите ниже примеры использования строк regex. По умолчанию в игре Regex нечувствителен к регистру.

Полезным инструментом для тестирования вашей regex-строки является этот сайт.

Настройка

Чтобы открыть окно настроек Regex нажмите шестеренку в окне чата. И в появившемся списке кликните Highlight string.

Как добраться до Regex

Игра предоставляет вам два способа использования системы регулярных выражений.

Простой способ

Пример простого ввода

Убедитесь, что чекбокс Enable Regex выключен. И просто вводите, в одно из полей, через пробел, желаемые слова, которые хотите выделить в чате. Этот способ наиболее элементарный. Но имеет недостатки.

Существует непреодолимый недостаток системы Regex, на текущий момент, это выделение части букв из других слов. Например введя слово маг, он будет выделять часть слова Магомед, бумага и любых других слов содержащих указанную последовательность букв. А также чувствителен к орфографическим ошибкам. Если вы зададите для выделения слово детектив, а в чате будет написано декектив, то оно выделено не будет.

Отчасти, справиться с этими недостатками можно используя регулярные выражения ниже.

Сложный способ

Сложный способ подразумевает использование синтаксиса регулярных выражений. Все доступные регулярные выражения представлены в справочнике BYOND Regex. Также вы можете посмотреть на YouTube руководства по Regex, что существенно упростит понимание нижеописанного.

Ниже будут приведены полезные для игры примеры.

в[^ ]+п[^ ]+р - хорошее регулярное выражение для выделения слова вампир.

Разберём это выражение подробнее:

[^ ] - выражение которое ищет любой символ исключая пробел

+ - ищет любое количество символов согласно предыдущему выражению. В данном случае это значит, что между символами В и П может быть любое количество, любых символов исключая пробелы.

Фактически для данное выражение можно представить так: в*п*р где, * - это любые символы (кроме пробела), в любом количестве.

Пример работы Regex рассчитанный на слово "вампир"

Комбинация Regex выражений

Если вы решите создать много Regex выражений для названий антагонистов и их сленг-синонимов, то строк представленных в окне Regex вам не хватит. Для решения указанной проблемы можно комбинировать множество выражений в одной строке:

Пример комбинирования для слов вампир и генокрад: (в[^ ]+п[^ ]+р|[^ ]+н[^ ]+к[^ ]+д)

Таблица готовых Regex выражений

Таблица с регулярными выражениями для наиболее часто употребляемых слов (будет пополняться, возможно)
Слово для выделения Regex синтакс
генокрад [^ ]+н[^ ]+к[^ ]+д
вампир в[^ ]+п[^ ]+р

Настройка цвета выделения

В нижней части окна предоставлена возможность изменить цвет выделения слов. Ввод цвета производится в шестнадцатеричной системе (HEX). Цвета можно подобрать по этой ссылке.