| Этот шаблон реализован на основе 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}} | Возвращает заданное количество символов с начала строки.
| {{str left}} | Возвращает символы от начала строки до N.
| {{str crop}} | Удаляет справа из строки заданное количество символов.
| {{обрезать слева и справа}} | Удаляет с обеих сторон указанное число символов.
| {{str right}} | Возвращает символы от N до конца строки.
|
| {{str rightc}} | Возвращает правую часть строки из заданного количества символов.
| {{str sub}} | Удаляет слева N символов и оставляет L.
| {{str sub new}} | Выбирает подстроку из строки на основе выбранных индексов.
| {{str index}} | Возвращает из строки один символ под заданным номером N.
|
|
|
---|
По проверке | {{delink}} | Удаляет из строки вики-ссылки, оставляя их текст.
| {{удалить теги}} | Удаляет из строки все html-теги, оставляя их содержимое.
| {{remove file prefix}} | Вырезает пространство имен из названия файла.
| {{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}} | Ищет подстроку в строке с заданным отступом от начала.
| {{ASCII code}} | Возвращает ASCII код символа.
|
|
|
|
|