Изменения

sep
Строка 1: Строка 1: −
<includeonly>{{#regex:{{{1}}}|%^.*?\[\[:?([^\]{{!}}]+)(?:\{{!}}[^\]]*)?]].*$%$1%1^%^.*$%$0%}}</includeonly><noinclude>Шаблон для извлечения предполагаемого имени человека из сложной ссылки. Извлекается содержимое первой ссылки (до <tt>|</tt>), если ссылок нет, то всё переданное.
+
<includeonly>{{#if:{{{sep|}}}
 +
| {{#regex: {{{1}}} | /((?<=\[\[).+?(?=\{{!}}{{!}}\]\]){{!}}^[^\[]+$)/ | sep = , }}
 +
| {{#regex:{{{1}}}|%^.*?\[\[:?([^\]{{!}}]+)(?:\{{!}}[^\]]*)?]].*$%$1%1^%^.*$%$0%}}
 +
}}</includeonly><noinclude>Шаблон для извлечения предполагаемого имени человека из сложной ссылки.
 +
 
 +
Если не задан параметр <code>sep</code>, то извлекается содержимое первой ссылки (до <tt>|</tt>), если ссылок нет, то всё переданное.
 +
 
 +
Если параметр <code>sep</code> задан, то будут извлечены будут все ссылки, и их список будет разделён <code>sep</code>.
    
Примеры:
 
Примеры:
 
* <tt><nowiki>{{Извлечь из ссылки|царь [[Александр I]] Благословенный}}</nowiki></tt> даст {{Извлечь из ссылки|царь [[Александр I]] Благословенный}},
 
* <tt><nowiki>{{Извлечь из ссылки|царь [[Александр I]] Благословенный}}</nowiki></tt> даст {{Извлечь из ссылки|царь [[Александр I]] Благословенный}},
 
* <tt><nowiki>{{Извлечь из ссылки|царь [[Александр I{{!}}Александр Благословенный]]}}</nowiki></tt> даст {{Извлечь из ссылки|царь [[Александр I{{!}}Александр Благословенный]]}},
 
* <tt><nowiki>{{Извлечь из ссылки|царь [[Александр I{{!}}Александр Благословенный]]}}</nowiki></tt> даст {{Извлечь из ссылки|царь [[Александр I{{!}}Александр Благословенный]]}},
*<tt><nowiki>{{Извлечь из ссылки|царь Александр I Благословенный}}</nowiki></tt> даст {{Извлечь из ссылки|царь Александр I Благословенный}}.
+
*<tt><nowiki>{{Извлечь из ссылки|царь Александр I Благословенный}}</nowiki></tt> даст {{Извлечь из ссылки|царь Александр I Благословенный}},
 +
*<tt><nowiki>{{Извлечь из ссылки|царь Александр I Благословенный|sep=,}}</nowiki></tt> даст {{Извлечь из ссылки|царь Александр I Благословенный|sep=,}},
 +
*<tt><nowiki>{{Извлечь из ссылки|[[Александр I]], [[Николай I|Николай Павлович]], [[Александр II]] и др.|sep=,}}</nowiki></tt> даст {{Извлечь из ссылки|[[Александр I]], [[Николай I|Николай Павлович]], [[Александр II]] и др.|sep=,}}.
   −
[[Категория:Traditio:Вспомогательные шаблоны]]
+
[[Категория:Традиция:Вспомогательные шаблоны]]</noinclude>
</noinclude>
 
Анонимный участник