Этот шаблон реализован на основе
Lua с использованием функции
pos()
из модуля
String .
Символы в исходной строке нумеруются с единицы до длины строки. Подстрока определятся двумя индексами.
{{str mid|<строка>|<индекс первого символа>|<длина подстроки>|<индекс последнего символа>}}
{{ str mid | Abcdefghijklmnopqrstuvwxyz | 5 | 3 }}
→ efg
Если второй параметр опущен, подстрока берётся с начала строки:
{{ str mid | Abcdefghijklmnopqrstuvwxyz | | 5 }}
→ Abcde
Если третий параметр опущен, подстрока берётся до конца строки:
{{ str mid | Abcdefghijklmnopqrstuvwxyz | 15 }}
→ opqrstuvwxyz
Если вместо третьего параметра задать четвёртый, то будет возвращена подстрока по символ с таким номером:
{{ str mid | Abcdefghijklmnopqrstuvwxyz | 5 | | 7 }}
→ efg
Подсчёт с конца Править
При введении отрицательных значений, индексы считаются с обратной стороны:
{{ str mid | Abcdefghijklmnopqrstuvwxyz | -7 | 4 }}
→ tuvw
{{ str mid | Abcdefghijklmnopqrstuvwxyz | -7 }}
→ tuvwxyz
В результирующей строке пробелы обрезаются:
>{{ str mid | I like this. | 2 | 6 }} <
→ >like<
Исходная строка до обработки от них тоже избавляется:
>{{ str mid | I like this. | 2 | 6 }} <
→ >like<
Сообщения об ошибках Править
При выходе за границы строки выбрасывается ошибка:
{{ str mid | Abcdefghijklmnopqrstuvwxyz | 30 }}
→ Ошибка модуля String: Значение индекса подстроки выходит за допустимые границы
{{ str mid | Abcdefghijklmnopqrstuvwxyz | 0 | 45 }}
→ Ошибка модуля String: Значение индекса подстроки выходит за допустимые границы
При установке |ignore errors=true
вместо ошибки возвращается пустая строка:
{{ str mid | Abcdefghijklmnopqrstuvwxyz | 0 | 45 | ignore errors=true }}
→
Категория ошибок Править
|no category=true
отключает добавление в категорию.
|error category=[[Категория:Название категории]]
позволяет заменять категорию, в которую заносятся страницы с ошибками.
По умолчанию используется Категория:Страницы с ошибками модуля String .
{{ str sub }} — индексы нумеруются с нуля.
Шаблоны обработки строк
По подсчёту {{ str mid }} Выводит подстроку длиной L, начиная с позиции N.
{{ trunc }} Выводит символы от начала строки до N или дублирует строку до N символов.
{{ str left }} Выводит символы от начала строки до N или дублирует строку до N символов.
{{ str crop }} Удаляет с правой стороны строки N символов.
{{ обрезать слева и справа }} Удаляет с обеих сторон строки N символов.
{{ str right }} Выводит символы от N до конца строки.
{{ str rightc }} Выводит правую часть строки из заданного количества символов.
{{ str sub }} Удаляет слева N символов и оставляет L.
{{ str sub new }} Выбирает из строки подстроку на основе выбранных индексов.
{{ str index }} Выводит из строки один символ под номером N.
По проверке {{ delink }} Удаляет из строки Тептар ссылки, оставляя их текст.
{{ удалить теги }} Удаляет из строки все html-теги, оставляя их содержимое.
{{ удалить префикс файла }} Вырезает из названия файла пространство имён.
{{ str trim }} Удаляет пробелы справа и слева.
{{ -. }} Удаляет из конца строки точку (одну).
{{ -года }} Удаляет из строки все вхождения слов «год», «года», «г.» и «гг.».
{{ без кв. скобок }} Удаляет из строки крайние парные квадратные скобки.
{{ без начала }} Удаляет из строки подстроку, совпадающую с началом строки.
{{ без пунктуации }} Удаляет из строки знаки пунктуации.
{{ без символа }} Удаляет из строки первое вхождение символа.
Вставка и замена строк
{{ вставить строку }} Вставляет подстроку в указанное место строки или приписывает её к концу, если strloc
<= 0.
{{ multi }} Выводит строку указанное количество раз.
{{ replace }} Заменяет в строке все включения подстроки.
{{ multireplace }} Заменяет в строке несколько символов или групп символов.
{{ без кирлата }} Исправляет текст, набранный смесью визуально неразличимой кириллицы и латиницы , заменяя латинские буквы идентичными по начертанию кириллическими и наоборот.
{{ str rep }} Заменяет в строке указанное количество включений подстроки.
{{ в 2 кв. скобках }} Тептар фицирует первый параметр, если он не Тептар фицирован.
{{ вложенные кавычки }} Заменяет в строке все парные кавычки-ёлочки («») на кавычки-лапки („“).
{{ курсив или кавычки }} Если строка содержит кириллицу, оборачивает её в кавычки, если латиницу, выделяет курсивом.
{{ курсив или нет }} Если строка содержит латиницу, выделяет её курсивом.
{{ локатив }} Переводит слова в предложный падеж (препозитив).
{{ в стране }} Де Тептар фицирует и переводит в предложный падеж название страны с добавлением предлога.
{{ страна в родительном падеже }} Де Тептар фицирует и переводит в родительный падеж название страны.
{{ нр }} Переводит видимую часть ссылки в нижний регистр.
{{ первое последним }} Делает первое слово строки последним.
{{ сначала имя }} Меняет порядок с «Фамилия, Имя Отчество» на «Имя Отчество Фамилия».
{{ год-года-лет }} Добавляет к цифровой записи количества лет слово «год», «года» или «лет» в нужном числе и падеже.
{{ +года }} Добавляет к последней цифре слово «года».
{{ ±. }} Добавляет точку к концу произвольного текста, если её там нет.
{{ .± }} Делает то же, что и предыдущий, но различает в конце параметра неразрывный пробел.
Анализ строк
{{ str len }} Выводит длину строки в символах.
{{ str ≥ len }} Проверяет, больше или равна длина строки в символах указанному числу.
{{ str ≤ len }} Проверяет, меньше или равна длина строки в символах указанному числу.
{{ str ≠ len }} Проверяет, равна ли длина строки в символах указанному числу.
{{ str ≤ ≥ len }} Сравнивает длину строки с заданным числом.
{{ str endswith }} Проверяет, заканчивается ли строка указанной подстрокой.
{{ str find }} Выводит позицию первого вхождения подстроки в текст.
{{ str sub find }} Ищет в строке подстроку с заданным отступом от начала.
{{ is numeric }} Проверяет, является ли строка числом.