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

Материал из SS220 Paradise Wiki (SS13)
Перейти к навигации Перейти к поиску
(Новая страница: «Это руководство предназначено для запуска одиночного сервера Paradise Station, без возможности...»)
 
мНет описания правки
 
(не показано 29 промежуточных версий 2 участников)
Строка 1: Строка 1:
Это руководство предназначено для запуска одиночного сервера Paradise Station, без возможности подключения других игроков. В отличие от этого способа, данное руководство значительно проще.
Regex (сокр. от Regular expressions - Регулярные выражения) - это способ поиска подтекста в тексте. Он позволит вам искать более сложные выражения и даст вам больше свободы в выборе того, что выделить. Однако он немного сложен для полного понимания за один раз. Смотрите ниже примеры использования строк regex. По умолчанию в игре Regex нечувствителен к регистру.
==Для чего стоит его использовать==
 
Запуск сервера с правами администратора позволит вам пощупать все механики игры, предметы, способности антагонистов и тд. Автор статьи рекомендует использовать его только в следующих случаях:
Полезным инструментом для тестирования вашей regex-строки является [https://regex101.com/ '''этот сайт.''']
*Вы хотите проверить способности, снаряжение антагонистов и тд. Весьма полезно, если у вас до первой игры на сервере с игроками будет понимание как работают их абилки, оружие, и другие уникальные предметы антагонистов, что уменьшит шанс на ваш эпичный провал.  
==Настройка==
* Можно запускать опасные инженерные двигатели: теслу, сингулярный двигатель и суперматерию без страха быть забаненым, если что то пойдет не так.  
Чтобы открыть окно настроек Regex нажмите шестеренку в окне чата. И в появившемся списке кликните <code>Highlight string</code>'''.'''
* Можно засунуть Bag of Holding в Bag of Holding и посмотреть, что произойдет.
[[Файл:Regex1.png|без|обрамить|Как добраться до Regex]]
* Повзрывать лимитки и другие гранаты.
Игра предоставляет вам два способа использования системы регулярных выражений.
* И для всего остального, за что бы вы, на сервере с игроками, могли быть забанены.
===Простой способ===
==Для чего не стоит использовать данное руководство==
[[Файл:Regex2.png|мини|591x591пкс|Пример простого ввода]]
Для всего остального. Вот серьезно, если вы хотите научиться оперировать, то не нужно использовать это руководство. Заходим на сервер с игроками, устраиваемся медиком и учимся оперировать мартышек или игроков. Даже если в силу ошибки вы кого то убьете на хирургическом столе, вас за это не забанят.  
 
Ошибки, это часть РП, все через них проходят и это контент для других игроков. Играя в РП, важно понимать, что вы играете не только ради себя. Не нужно использовать это руководство для строительства игровых объектов, лечения мобов, приготовления напитков за бармена, выращивания растений в ботанике и тд., когда вы, пусть и через ошибки, но можете приобретать опыт на сервере с игроками, такой процесс существенно интереснее. В противном случае чрезмерное использование данного руководства может повлечь потерю интереса к Paradise Station. Я предупредил.
Убедитесь, что чекбокс <code>Enable Regex</code> выключен. И просто вводите, в одно из полей, через пробел, желаемые слова, которые хотите выделить в чате. Этот способ наиболее элементарный. Но имеет недостатки.
==Установка и запуск==
 
#Нужно убедиться, что клиент BYOND запущен и вы в нем авторизованы. Вспоминаем логин (Account name), который вы использовали при регистрации в BYOND.
Существует непреодолимый недостаток системы Regex, на текущий момент, это выделение части букв из других слов. Например введя слово '''маг,''' он будет выделять часть слова '''<mark>Маг</mark>омед, бу<mark>маг</mark>а''' и любых других слов содержащих указанную последовательность букв. А также чувствителен к орфографическим ошибкам. Если вы зададите для выделения слово '''детектив,''' а в чате будет написано '''декектив,''' то оно выделено не будет.  
#Скачиваем данный архив и распаковываем, например на рабочий стол.
 
#В файле admin.txt (открываем с помощью "блокнота") по пути paradise\config\ необходимо вместо слова '''логин''' прописать ваш логин (Account name) из BYOND, регистр не важен. Сохраняем изменения.
Отчасти, справиться с этими недостатками можно используя регулярные выражения ниже.
#Запускаем игру через paradise.dmb. Если по пунктам выше всё сделали правильно, то появятся вкладки server, admin и другие. Если их нет, то смотрим 3й пункт.
 
===Сложный способ===
Сложный способ подразумевает использование синтаксиса регулярных выражений. Все доступные регулярные выражения представлены в справочнике [https://www.byond.com/docs/ref/#/{notes}/regex '''BYOND Regex''']. Также вы можете посмотреть на [https://www.youtube.com/results?search_query=regex '''YouTube руководства по Regex'''], что существенно упростит понимание нижеописанного.  
 
Ниже будут приведены полезные для игры примеры.
 
'''в[^ ]+п[^ ]+р''' - хорошее регулярное выражение для выделения слова '''вампир.'''
 
Разберём это выражение подробнее:
 
'''[^ ]''' - выражение которое ищет любой символ исключая пробел
 
'''+''' - ищет любое количество символов согласно предыдущему выражению. В данном случае это значит, что между символами '''В''' и '''П''' может быть любое количество, любых символов исключая пробелы.
 
Фактически для данное выражение можно представить так: '''в*п*р''' где, * - это любые символы (кроме пробела), в любом количестве.
[[Файл:Regex3.png|без|обрамить|Пример работы Regex рассчитанный на слово "вампир"]]
 
==== Комбинация Regex выражений ====
Если вы решите создать много Regex выражений для названий антагонистов и их сленг-синонимов, то строк представленных в окне Regex вам не хватит. Для решения указанной проблемы можно комбинировать множество выражений в одной строке:
 
Пример комбинирования для слов '''вампир''' и '''генокрад:''' (в[^ ]+п[^ ]+р|[^ ]+н[^ ]+к[^ ]+д)
 
==== Таблица готовых Regex выражений ====
{| class="wikitable" style="text-align: center;"
|+Таблица с регулярными выражениями для наиболее часто употребляемых слов
(будет пополняться, возможно)
|- style="font-weight: bold; text-align: center; background-color: chocolate; color: white;"
| style="width: 250pt; center;" |Слово для выделения
| style="width: 150pt; center;" |Regex синтакс
|-
!'''генокрад'''
|[^ ]+н[^ ]+к[^ ]+д
|-
!'''вампир'''
|в[^ ]+п[^ ]+р
|}
 
===Настройка цвета выделения===
В нижней части окна предоставлена возможность изменить цвет выделения слов. Ввод цвета производится в [[google:цвет+шестнадцатеричный+код|'''шестнадцатеричной системе (HEX)''']]. Цвета можно подобрать по этой [[ColorPalette|'''ссылке''']].
[[Категория:Руководства]]

Текущая версия от 23:55, 4 декабря 2021

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

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

Настройка

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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