// здесь ваши замены, шаблон — r(/ /g, '');
// излишняя викификация
r(/\[\[(болото|озеро|водохранилище|дождь|снег|берег|дно|водо[ёе]м|ручей|водосбор|русло|речное русло|русло реки)\|([а-яё ]+)\]\]/gi, '$2');
r(/\[\[(болото|озеро|водохранилище|дождь|снег|берег|дно|водо[ёе]м|ручей|водосбор|русло|речное русло)\]\]/gi, '$1');
r(/\[\[(растени[ея]|водоросли|ареал|рыба|холм|флора|фауна|вода|уровень моря|населённый пункт)\|([а-яё ]+)\]\]/gi, '$2');
r(/\[\[(растени[ея]|водоросли|ареал|рыба|холм|флора|фауна|вода|уровень моря|населённый пункт)\]\]/gi, '$1');
r(/\[\[(мост|город|протока|водоток|ущелье|село|деревня|дорога|лес|дерево|кустарник|мыс|юг|север|запад|восток)\|([а-яё ]+)\]\]/gi, '$2');
r(/\[\[(мост|город|протока|водоток|ущелье|село|деревня|дорога|лес|дерево|кустарник|мыс)\]\]/gi, '$1');
r(/\[\[((?:кило)?метр|гектар|луг|площадь|объ[ёе]м|ширина|длина|побережье|гор[аы]|дамба|плотина|порт|долина|равнина)\|([а-яё ]+)\]\]/gi, '$2');
r(/\[\[((?:кило)?метр|гектар|луг|площадь|объ[ёе]м|ширина|длина|побережье|гор[аы]|дамба|плотина|порт|долина|равнина)\]\]/gi, '$1');
r(/\[\[(трава|процент|пляж|отдых|туризм|человек|птицы|насекомые|млекопитающие|животные)\|([а-яё ]+)\]\]/gi, '$2');
r(/\[\[(трава|процент|пляж|отдых|туризм|человек|птицы|насекомые|млекопитающие|животные)\]\]/gi, '$1');
r(/\[\[(л[её]д|зима|весна|осень|лето|море|полуостров|пролив|баржа|пруд|исток|устье)\|([а-яё ]+)\]\]/gi, '$2');
r(/\[\[(л[её]д|зима|весна|осень|лето|море|полуостров|пролив|баржа|пруд|исток|устье)\]\]/gi, '$1');
r(/\[\[(высота над уровнем моря|биологический вид)\|([а-яё ]+)\]\]/gi, '$2');
r(/\[\[(ноябрь|декабрь|январь|февраль|март|апрель|май|июнь|июль|август|сентябрь|октябрь)\|([а-яё ]+)\]\]/gi, '$2');
r(/\[\[(ноябрь|декабрь|январь|февраль|март|апрель|май|июнь|июль|август|сентябрь|октябрь)\]\]/gi, '$1');
r(/\[\[[Уу]стье( реки)?\|([А-яё ]+)\]\]/g, '$2');
r(/\[\[[Уу]стье( реки)?(\|(У|у)сть(е|я|ю)( реки)?)?\]\]/g, '$3сть$4$5');
r(/\[\[Аркуль\]\]/g, '[[Аркуль (посёлок городского типа)|Аркуль]]');
//притоки
if (txt.indexOf('{{Река') > -1) {
r(/\* [Вв]\s(\d+)\sкм от устья,? по (пр|л)[ае]вому берегу(?: реки)? впадает река (.+?)\.?\n/g, '* $1 км: $3 ($2)\n');
r(/(км от устья),? по (лев|прав)ому берегу(?: реки)? впадает река /g, '$1 впадает $2ый приток ');
}
//Топонимы Татарстана
if (txt.indexOf('toponym') > -1) {
r(/'''([А-Я][А-яЁё0-9а́-и́ -]+)'''([^]*)>[^<]*toponym\.antat\.ru\/ru\/node.+?</g, '\'\'\'$1\'\'\'$2>{{КТРТ||$1|2022-08-07||}}<');
}
//Кадастр
if (txt.indexOf('Portal') > -1) {
r(/\]\]<[^<]*maps\.rosreestr\.ru\/Portal[^>]*?>/g, ']]');
}
//строчки
r(/\}\}[\s\n]*(''')/g, '}}\n$1');
r(/\}\}[\s\n]*(\{\{другие значения)/g, '}}$1');
r(/{{Примечания}}/g, '{{примечания}}');
r(/({{примечания}})\n?{{/g, '$1\n\n{{');
r(/ }}\n?\s*(\[\[Категория:)/g, '}}\n\n$1');
r(/}}\n?\s*(\[\[Категория:)/g, '}}\n\n$1');
//БРЭ
r(/>[^'>]*''([^'>]+)''[^'<>]*bigenc\.ru\/[a-z_]+\/text\/([\d]+) ([^\[]+)?\][^<]*</g, '>{{БРЭ |статья= $3|id=$2 |автор= $1|год= }}<');
r(/>[^>]*bigenc\.ru\/[a-z_]+\/text\/([\d]+) ([^\[]+)?\][^<]*</g, '>{{БРЭ |статья= $2|id=$1 |автор= |год= }}<');
r(/>[^>]*?(?:\|author *= *([^\|]+)).*?bigenc\.ru\/[a-z_]+\/text\/([\d]+)[^<]*?\|title *= *([^\|\\\/•]+)[^<]*?\|[^<]*</g, '>{{БРЭ |статья= $3|id= $2 |автор= $1|год= }}<');
r(/>[^>]*?bigenc\.ru\/[a-z_]+\/text\/([\d]+)[^<]*?\|title *= *([^\|•]+)[^<]*?\|[^<]*</g, '>{{БРЭ |статья= $2|id= $1 |автор= |год= }}<');
r(/\n.*\[.*bigenc\.ru\/[a-z_]+\/text\/([\d]+) ([^\[]+)?\].*\n/g, '\n* {{БРЭ |статья= $2|id=$1 |автор= |год= }}\n');
r(/\n.*?(?:\|author *= *([^\|]+)).*?bigenc\.ru\/[a-z_]+\/text\/([\d]+).*?\|title *= *([^\|\\\/•]+).*?\|.*\n/g, '\n* {{БРЭ |статья= $3|id=$2 |автор= $1|год= }}\n');
r(/>[^>]*?bigenc\.ru\/[a-z_]+\/text\/([\d]+)[^<]*?\|заглавие *= *([^}\|•]+).*?[}\|][^<]*</g, '>{{БРЭ |статья= $2|id= $1 |автор= |год= }}<');
//Британника r(/ /g, ''); url потом title иначе ломает
r(/>[^>]*?https?:\/\/(?:www\.)?britannica\.com\/[^ \|\d]+\/([\d]+)[^<]+?title *= *([^}\|]+)[^<]*</g, '>{{Британника онлайн|$1|$2|2022-09-21}}<');
r(/>[^>]*\|url *= *(https?:\/\/(?:www\.)?britannica\.com[^ \|]+)[^<]+?title *= *([^}\|]+)[^<]*</g, '>{{Британника онлайн|$1|$2|2022-09-21}}<');
r(/>[^>]*?https?:\/\/(?:www\.)?britannica\.com\/[^ \|\d]+\/([\d]+)[^}\|\]]+? (.*?)\][^<]*</g, '>{{Британника онлайн|$1|$2|2022-09-21}}<');
r(/>[^>]*\[(https?:\/\/(?:www\.)?britannica\.com[^ ]+) (.*?)\][^<]*</g, '>{{Британника онлайн|$1|$2|2022-09-21}}<');
r(/\n.*?https?:\/\/(?:www\.)?britannica\.com\/[^ \|\d]+\/([\d]+).+?title *= *([^}\|]+).*\n/g, '\n* {{Британника онлайн|$1|$2|2022-09-21}}\n');
r(/\n.*?\|url *= *(https?:\/\/(?:www\.)?britannica\.com[^ \|]+).+?title *= *([^}\|]+).*\n/g, '\n* {{Британника онлайн|$1|$2|2022-09-21}}\n');
r(/\n.*?https?:\/\/(?:www\.)?britannica\.com\/[^ \|\d]+\/([\d]+)[^}\|\]]+? (.*?)\].*\n/g, '\n* {{Британника онлайн|$1|$2|2022-09-21}}\n');
r(/\n.*?\[(https?:\/\/(?:www\.)?britannica\.com[^ ]+) (.*?)\].*\n/g, '\n* {{Британника онлайн|$1|$2|2022-09-21}}\n');
//Canadaian encyclopedia
r(/>[^>]*?url *= *https?:\/\/(?:www\.)?thecanadianencyclopedia\.[^<]+?title *= *([^}\|]+)[^<]*</g, '>{{The Canadian Encyclopedia|$1|2022-09-21}}<');
r(/\n.*?url *= *https?:\/\/(?:www\.)?thecanadianencyclopedia\.[^<]+?title *= *([^}\|]+).*\n/g, '\n* {{The Canadian Encyclopedia|$1|2022-09-21}}\n');
//wldb
r(/>[^>]*?url *= *https?:\/\/wldb\.ilec\.or\.jp[^<]+?title *= *([^}\|]+)[^<]*</g, '>{{WLDB||$1|2022-09-21}}<');
r(/\n.*?url *= *https?:\/\/wldb\.ilec\.or\.jp[^<]+?title *= *([^}\|]+).*\n/g, '\n* {{WLDB||$1|2022-09-21}}\n');
//ускорение для себя
//форматирование шаблона Книга
/*r(/{{[Кк]нига[^\:][^\}]+?({{|}})/g, function ( line ) {
line = line.replace(/\|[\s]+/g, '|');//для упрощения регулярок ниже
//вставить недостающие параметры
if (line.match(/\|язык *=/) === null) {
line = line.replace(/\|заглавие/g, '|язык = |заглавие');
}
line = line.replace(/\|язык *= *(mis|und|[А-яЁё])?/g, '|язык = ');//вычистка кода отсутствия языка и ложного заполнения
var label = line.match(/\|заглавие *= *([^\|\n\}]+)/);
if (label !== null && label[1].trim() !== '') {
if (line.replace(/\|язык *= *[\|\}\n]/g, '') != line) {
label = label[1].trim();
var label_r = label.replace(/[,\:\;\!\?\"\'«»\&…%\s\-\–\—\.\(\)\{\}\[\]\|0-9IVX]/g, '');//убрать пунктуацию и цифры
if (label_r.replace(/[А-яЁё№]/g, '') === '') {
line = line.replace(/(\|язык *= *)/g, '$1ru ');
}
}
}
return line;
});*/
//форматирование шаблона Cite web
/*r(/{{[Cc]ite web[^\}]+?}}/g, function ( line ) {
line = line.replace(/\|[\s]+/g, '|');//для упрощения регулярок ниже
//вставить недостающие параметры
if ( line.indexOf( '|author' ) === -1 ) {
line = line.replace(/({{[Cc]ite web *)/g, '$1|author = ');
}
if ( line.indexOf( '|lang' ) === -1 ) {
line = line.replace(/(\|author *=[^\n\|\}]*)([\n\|\}])/g, '$1|lang = $2');
}
var label = line.match(/\|title *= *([^\|\n\}]+)/);
if (label !== null && label[1].trim() !== '') {
if (line.replace(/\|lang *= *[\|\}\n]/g, '') != line) {
label = label[1].trim();
var label_r = label.replace(/[,\:\;\!\?\"\'«»\&…%\s\-\–\—\.\(\)\{\}\[\]\|0-9IVX]/g, '');//убрать пунктуацию и цифры
if (label_r.replace(/[А-яЁё№]/g, '') === '') {
line = line.replace(/(\|lang *= *)/g, '$1ru ');
}
}
}
return line;
});*/
//мелочи типографики
r(/(\d)\s*<sup>[oо0˚°º]<\/sup>\s*[CС]/g, '$1 °C');
r(/(\d)\s*<sup>[oо0˚°º]<\/sup>\s*?[CС]?/g, '$1 °C');
r(/[˚º]\s*[CС]/g, '°C');
r(/([^−][\d,]+)\s*(?:°)?(?:C)?\s*(?:<math>\\div<\/math>|[÷-])\s*([\d,]+)\s*°[CС]/g, '$1—$2 °C');
r(/мин\.\s*—\s*(\d\d)С/g, 'мин. −$1 °C');
r(/\+\s+([\d,]+)\s+°C/g, '+$1 °C');
r(/(?<=[а-я])\+\s*([\d,]+)\s*°C/g, ' +$1 °C');
r(/\(-([\d,]+\s+°C)/g, '(−$1');
r(/(?<=[й:]\s+)[—-] ([\d,]+\s+°C)/g, '−$1');
r(/(?<=[й:]\s+)[—-] ([\d,]+)\s+[÷-]+([\d,]+)\s+°C/g, '−$1…−$2 °C');
r(/(?<=[а-я])[−-]\s(\d[\d,]*\s+°C)/g, ' −$1');
r(/(?<=[а-я])([—-])(?=\s+[\dА-я])/g, ' $1');
r(/(?<=\s+)([—-])(?=[А-я])/g, '$1 ');
r(/(\d+)°С/g, '$1 °C');
r(/−([\d,]+)\s*(?:°)?(?:C)?\s*(?:<math>\\div<\/math>−?|[−—÷-]+)\s*([\d,]+)\s*°[CС]/g, '−$1…−$2 °C');
r(/минус ([\d,]+) градусов/g, '−$1 °C');
r(/плюс ([\d,]+) градусов/g, '+$1 °C');
r(/;\s*Климат[\n\s]+умеренно/g, ';Климат\nКлимат умеренно');
r(/ Среднегодовая температура[-\s][\d,]+\s*[CС]?\s*[—÷][\d,]+\s+°C\./g, '');
r(/тепл(ая|ое|ые|ый|ым|ого|ому|ом)/g, 'тёпл$1');
r(/(П|п)оселк(а|е|у|ом)/g, '$1осёлк$2');
r(/ причем/g, ' причём');
r(/умеренно\s*[—-]\s*континентальн/g, 'умеренно континентальн');
r(/умеренно-(?=[а-я])/g, 'умеренно ');
r(/весенне\s+[—-]\s+лет/g, 'весенне-лет');
r(/(север|юг|запад|восток)-(северо|юго)-(восто[кч]|запад)/g, '$1о-$2-$3');
r(/(север|юг|запад|восток) (от районного центра) (пос|села|города|деревн)/g, '$1 $2 — $3');
r(/(\d\d\d\d)(г{1,2}) /g, '$1 $2. ');
r(/''' ([А-Я][А-яЁё0-9 -]+) '''/g, '\'\'\'$1\'\'\'');
r(/'''([А-Я][А-яЁё0-9 -]+) '''\s/g, '\'\'\'$1\'\'\' ');
r(/''' ([А-Я][А-яЁё0-9 -]+)'''\s/g, '\'\'\'$1\'\'\' ');
r(/\' ?— ?([а-я])/g, '\' — $1');
r(/= ([А-я0-9])/g, '= $1');
r(/ =([А-я0-9])/g, ' = $1');
// r(/(1[6-9]\d\d|2002)—(\d{2,3}[^\d])/g, '$1 — $2');
r(/(1[6-9]\d\d)—(\d\d\d\d[,<])/g, '$1 — $2');
r(/(1[6-9]\d\d) (\d\d+) и (\d+)/g, '$1 — $2 и $3');
r(/в (1[6-9]\d\d)\s(\d+) жител/g, 'в $1 — $2 жител');
r(/(\d{2,4}) в (2[01]\d\d[\.,<])/g, '$1 — в $2');
r(/(в 2002)\s−\s(\d+)/g, '$1 — $2');
r(/ (\d) (\d\d\d)/g, ' $1$2');
r(/({{ref-[a-z][a-z]}})\]/g, ']$1');
r(/\n *\| *CoordScale *= *<!--[^\n\|]+/g, '');
r(/(?<=\n) *\| *цифровой идентификатор 2 *= *\n/g, '');
//века
r(/ (Х|X){2}(І|I)/g, ' XXI'); //21
r(/(Х|X)(Х|X)(І|I)\]\]/g, 'XXI]]'); //21
r(/ (Х|X)(Х|X)/g, ' XX'); //20
r(/(Х|X)(Х|X)\]\]/g, 'XX]]'); //20
r(/([\|–—-])ХХ/g, '$1XX'); //20,21
r(/XXХ/g, 'XXX'); // три Х
r(/ (Х|X)(І|I)(Х|X)/g, ' XIX'); //19
r(/Х(І|I)Х\]\]/g, 'XIX]]'); //19
r(/ (Х|X)V(І|I){3}/g, ' XVIII'); //18
r(/(Х|X)V(III|ІІІ)\]\]/g, 'XVIII]]'); //18
r(/ (Х|X)V(І|I){2}/g, ' XVII'); //17
r(/(Х|X)V(II|ІІ)\]\]/g, 'XVII]]'); //17
r(/ (Х|X)V(І|I)/g, ' XVI'); //16
r(/(Х|X)V(І|I)\]\]/g, 'XVI]]'); //16
r(/ ХV/g, ' XV'); //15
r(/ХV\]\]/g, 'XV]]'); //15
r(/ (Х|X)(I|І)V/g, ' XIV'); //14
r(/ХIV\]\]/g, 'XIV]]'); //14
r(/ (Х|X)(І|I){3}/g, ' XIII'); //13
r(/(Х|X)(III|ІІІ)\]\]/g, 'XIII]]'); //13
r(/ (Х|X)(І|I){2}/g, ' XII'); //12
r(/(Х|X)(II|ІІ)\]\]/g, 'XII]]'); //12
r(/ (Х|X)(І|I)/g, ' XI'); //11
r(/(Х|X)(I|І)\]\]/g, 'XI]]'); //11
r(/ (І|I)(Х|X)/g, ' IX'); //9
r(/(I|І)(Х|X)\]\]/g, 'IX]]'); //9
r(/ Х( [а-фц-я]|[–—-][^А-ФЦ-Я]|, [^У-ФЦ-Ях])/g, ' X$1'); //10
r(/век\|Х( *[а-я]*)\]\]/g, 'век|X$1]]'); //10
r(/([XVI][–—-])Х /g, '$1X'); //10
r(/([\|–—-])Х([XVI]+)/g, '$1X$2'); //11-18
r(/([\|–—-])ХIХ/g, '$1XIX'); //19
//рыбы
r(/\[\[([Пп])лотва\]/g, '[[Обыкновенная плотва|$1лотва]');
r(/\[\[([Кк])арп\]\]/g, '[[Сазан|$1арп]]');
//вставка карта для истока и устья
if (txt.indexOf('{{нет АИ 2|Высота') > -1) {
if (confirm('заменить запрос АИ2 на шаблон карты?')) {
r(/{{нет АИ 2\|Высота (истока|устья) — ([\d,]+) м над уровнем моря.\|(?:\d){1,2}\|(?:\d){1,2}\|\d\d\d\d}}/g, 'Высота $1 — $2 м над уровнем моря<ref>{{карта|}}</ref>.');
r(/{{нет АИ 2\|Высота над уровнем моря — ([\d,]+) м.\|(?:\d){1,2}\|(?:\d){1,2}\|\d\d\d\d}}/g, 'Высота над уровнем моря — $1<ref>{{карта|}}</ref>.');
}
}
//латкир
r(/(([^ກ])a([а-яёўґєіїј][а-яёўґєіїј])|([А-яЁёІЎіўҐЄІЇґєії])a([а-яёўґєіїј])|([А-яЁёІЎіўҐЄІЇґєії][а-яёўґєіїј])a([^ກ]))/g, '$2$4$6а$3$5$7');
r(/(([^ກ])c([а-яёўґєіїј][а-яёўґєіїј])|([А-яЁёІЎіўҐЄІЇґєії])c([а-яёўґєіїј])|([А-яЁёІЎіўҐЄІЇґєії][а-яёўґєіїј])c([^ກ]))/g, '$2$4$6с$3$5$7');
r(/(([^ກ])e([а-яёўґєіїј][а-яёўґєіїј])|([А-яЁёІЎіўҐЄІЇґєії])e([а-яёўґєіїј])|([А-яЁёІЎіўҐЄІЇґєії][а-яёўґєіїј])e([^ກ]))/g, '$2$4$6е$3$5$7');
r(/(([^ກ])o([а-яёўґєіїј][а-яёўґєіїј])|([А-яЁёІЎіўҐЄІЇґєії])o([а-яёўґєіїј])|([А-яЁёІЎіўҐЄІЇґєії][а-яёўґєіїј])o([^ກ]))/g, '$2$4$6о$3$5$7');
r(/(([^ກ])p([а-яёўґєіїј][а-яёўґєіїј])|([А-яЁёІЎіўҐЄІЇґєії])p([а-яёўґєіїј])|([А-яЁёІЎіўҐЄІЇґєії][а-яёўґєіїј])p([^ກ]))/g, '$2$4$6р$3$5$7');
r(/(([^ກ])y([а-яёўґєіїј][а-яёўґєіїј])|([А-яЁёІЎіўҐЄІЇґєії])y([а-яёўґєіїј])|([А-яЁёІЎіўҐЄІЇґєії][а-яёўґєіїј])y([^ກ]))/g, '$2$4$6у$3$5$7');
r(/(([^ກ])x([а-яёўґєіїј][а-яёўґєіїј])|([А-яЁёІЎіўҐЄІЇґєії])x([а-яёўґєіїј])|([А-яЁёІЎіўҐЄІЇґєії][а-яёўґєіїј])x([^ກ]))/g, '$2$4$6х$3$5$7');
//Ханты
r(/([а-я])\)<ref name *= *"ГВР" *\/>\s+—/g, '$1<ref name="ГВР"/>) —');
r(/(протекает по \[\[Ханты-Мансийский автономный округ — Югра\|Ханты-Мансийскому АО\]\]) У/g, '$1. У');
//устья
r(/находится в ([\d,]+)\sкм по ((?:пра|ле)вому берегу) реки ([^,.<]+)/g, 'находится в $1 км от устья реки $3 по $2');
r(/км от устья реки \[\[([А-яЁё]+?)ая ([^\|\]]+?[бвдзлмнпрстфц])а(?:( \([А-яЁё ]+\))(?:\|[А-яЁё ]+а))?\]\]/g, 'км от устья [[$1ая $2а$3|$1ой $2ы]]');
r(/км от устья реки \[\[([А-яЁё]+?)ая ([^\|\]]+?[гжйкхчшщ])а(?:( \([А-яЁё ]+\))(?:\|[А-яЁё ]+а))?\]\]/g, 'км от устья [[$1ая $2а$3|$1ой $2и]]');
r(/км от устья реки \[\[([А-яЁё]+?)ая ([^\|\]]+?[б-ш])([ья])(?:( \([А-яЁё ]+\))(?:\|[А-яЁё ]+[ья]))?\]\]/g, 'км от устья [[$1ая $2$3$4|$1ой $2и]]');
r(/км от устья реки \[\[([А-яЁё]+?)яя ([^\|\]]+?[бвдзлмнпрстфц])а(?:( \([А-яЁё ]+\))(?:\|[А-яЁё ]+а))?\]\]/g, 'км от устья [[$1яя $2а$3|$1ей $2ы]]');
r(/км от устья реки \[\[([А-яЁё]+?)яя ([^\|\]]+?[гжйкхчшщ])а(?:( \([А-яЁё ]+\))(?:\|[А-яЁё ]+а))?\]\]/g, 'км от устья [[$1яя $2а$3|$1ей $2и]]');
r(/км от устья реки \[\[([А-яЁё]+?)яя ([^\|\]]+?[б-ш])([ья])(?:( \([А-яЁё ]+\))(?:\|[А-яЁё ]+[ья]))?\]\]/g, 'км от устья [[$1яя $2$3$4|$1ей $2и]]');
r(/км от устья реки \[\[([^\|\]]+?[бвдзлмнпрстфц])а(?:( \([А-яЁё ]+\))(?:\|[А-яЁё ]+а))?\]\]/g, 'км от устья [[$1а$2|$1ы]]');
r(/км от устья реки \[\[([^\|\]]+?[гжйкхчшщ])а(?:( \([А-яЁё ]+\))(?:\|[А-яЁё ]+а))?\]\]/g, 'км от устья [[$1а$2|$1и]]');
r(/км от устья реки \[\[([^\|\]]+?[б-ш])([ья])(?:( \([А-яЁё ]+\))(?:\|[А-яЁё ]+[ья]))?\]\]/g, 'км от устья [[$1$2$3|$1и]]');
//девикификация дат
if ((txt.indexOf(' января]]') > -1) || (txt.indexOf(' февраля]]') > -1) || (txt.indexOf(' марта]]') > -1) || (txt.indexOf(' апреля]]') > -1) || (txt.indexOf(' мая]]') > -1) || (txt.indexOf(' июня]]') > -1) || (txt.indexOf(' июля]]') > -1) || (txt.indexOf(' августа]]') > -1) || (txt.indexOf(' сентября]]') > -1) || (txt.indexOf(' октября]]') > -1) || (txt.indexOf(' ноября]]') > -1) || (txt.indexOf(' декабря]]') > -1) || (txt.indexOf(' января|') > -1) || (txt.indexOf(' февраля|') > -1) || (txt.indexOf(' марта|') > -1) || (txt.indexOf(' апреля|') > -1) || (txt.indexOf(' мая|') > -1) || (txt.indexOf(' июня|') > -1) || (txt.indexOf(' июля|') > -1) || (txt.indexOf(' августа|') > -1) || (txt.indexOf(' сентября|') > -1) || (txt.indexOf(' октября|') > -1) || (txt.indexOf(' ноября|') > -1) || (txt.indexOf(' декабря|') > -1)) {
if (confirm('девикифицировать даты?')) {
r(/\[\[(\d+ )(января|февраля|марта|апреля|мая|июня|июля|августа|сентября|октября|ноября|декабря)\|([А-яё ]+)\]\]/g, '$3');
r(/\[\[(\d+ )(января|февраля|марта|апреля|мая|июня|июля|августа|сентября|октября|ноября|декабря)\]\]/g, '$1$2');
}
}
//ГВР сокращение
if (txt.indexOf('title=Государственный водный реестр') == -1) {
r(/\{\{cite web.+card=([0-9]+) *\| *title *= *(?:Государственный водный реестр РФ:|Государственный водный реестр:)? *(Река |Озеро )?(.*?)(\s*\||\|).+?\}\}/g, '{{ГВР|$1|$3}}');
}
r(/\{\{ГВР([^ }]+?) \}\}/g, '{{ГВР$1}}');
// Код ГВР
r(/\n\* Код водного объекта (\d+)/g, ' Код водного объекта — $1.<ref name="ГВР"/>');
r(/Код водного объекта\s(\d+)(\.)?/g, 'Код водного объекта — $1<ref name="ГВР"/>.');
//ООПТ
if (txt.indexOf('oopt') > -1) {
r(/>[^<]*oopt\.aari\.ru\/oopt\/([А-я-]+(?:\/map)?)[^<]*?accessdate = (\d\d\d\d-\d\d-\d\d)[^<]*?archiveurl = (.*?) [^<]*?archivedate = (\d\d\d\d-\d\d-\d\d)[^]*?</g, '>{{ООПТ|$1|$1|$2||$4|$3}}<');
r(/>[^<]*oopt\.aari\.ru\/oopt\/([А-я-]+(?:\/map)?)[^<]*?accessdate = (\d\d\d\d-\d\d-\d\d)[^]*?</g, '>{{ООПТ|$1|$1|$2}}<');
r(/>[^<]*oopt\.aari\.ru\/oopt\/([А-я-]+(?:\/map)?)[^]*?</g, '>{{ООПТ|$1|$1}}<');
r(/.*oopt\.aari\.ru\/oopt\/([А-я-]+(?:\/map)?).*?accessdate = (\d\d\d\d-\d\d-\d\d).+/g, '* {{ООПТ|$1|$1|$2}}');
r(/.*oopt\.aari\.ru\/oopt\/([А-я-]+(?:\/map)?).*/g, '* {{ООПТ|$1|$1}}');
r(/{{ООПТ\|(.+?)\|(?:([А-яЁё ]+?)-)/g, '{{ООПТ|$1|$2 ');
r(/{{ООПТ\|(.+?)\|(?:([А-яЁё ]+?)-)/g, '{{ООПТ|$1|$2 ');
r(/{{ООПТ\|(.+?)\|(?:([А-яЁё ]+?)-)/g, '{{ООПТ|$1|$2 ');
r(/{{ООПТ\|(.+?)\|(?:([А-яЁё ]+?)-)/g, '{{ООПТ|$1|$2 ');
r(/{{ООПТ\|(.+?)\|(?:([А-яЁё ]+?)-)/g, '{{ООПТ|$1|$2 ');
r(/{{ООПТ\|(.+?)\|(?:([А-яЁё ]+?)-)/g, '{{ООПТ|$1|$2 ');
}
//nakarte
if (txt.indexOf('АИ 2|Высота ') > -1) {
r(/(Координаты устья *= *([\d.]+)\/([\d.]+))/g, '$1\nhttps://nakarte.me/#m=12/$2/$3&l=T/C/Ng');
r(/(Координаты истока *= *([\d.]+)\/([\d.]+))/g, '$1\nhttps://nakarte.me/#m=12/$2/$3&l=T/C/Ng');
}
//выравнивание всех карточек с параметрами на Большую букву
if (txt.indexOf('{{Река') == -1 && txt.indexOf('{{Озеро') == -1 && txt.indexOf('{{НП') == -1 && txt.indexOf('{{неодно') == -1 && txt.indexOf('авигационная') == -1 && txt.indexOf('{{Климат') == -1 && txt.indexOf('{{Температура') == -1) {
if (txt.indexOf('|Название =') > -1) {
r(/(?:( ) )? ?\|(?:\s*)([А-ЯI][А-Яа-яЁё_ 0-9+D-]+?)(?:\s*)= *([^\n]*)(?=\n)/g, '$1 |$2 = $3');
r(/( \|)(.{23} )\s*=( [^\n]*)(?=\n)/g, '$1$2=$3');
r(/( \|)(.{22} )\s*=( [^\n]*)(?=\n)/g, '$1$2=$3');
r(/( \|)(.{21} )\s*=( [^\n]*)(?=\n)/g, '$1$2=$3');
}
else if (confirm('выровнить карточку?')) {
r(/(?:( ) )? ?\|(?:\s*)([А-ЯI][А-Яа-яЁё_ 0-9+D-]+?)(?:\s*)= *([^\n]*)(?=\n)/g, '$1 |$2 = $3');
r(/( \|)(.{23} )\s*=( [^\n]*)(?=\n)/g, '$1$2=$3');
r(/( \|)(.{22} )\s*=( [^\n]*)(?=\n)/g, '$1$2=$3');
r(/( \|)(.{21} )\s*=( [^\n]*)(?=\n)/g, '$1$2=$3');
}
}
r(/ \|Протяжённость с севера на юг *=/g, ' |Протяжённость с севера на юг =');
r(/ \|Протяжённость с запада на восток *=/g, ' |Протяжённость с запада на восток =');
r(/ \|Среднегодовая температура *=/g, ' |Среднегодовая температура =');
//выравнивание карточек НП с параметрами на маленькую букву
if (txt.indexOf('{{НП') > -1) {
// if (confirm('выровнить карточку НП?')) {
r(/(?<=\n *)(?:( ) )? ?\|(?:\s*)((?:[а-яD]|lat|lon|add)[А-Яа-яЁё_ 0-9+A-z-]+?)(?:\s*)= *([^\n]*)(?=\n)/g, '$1 |$2 = $3');
r(/( \|)(.{24} )\s*=( [^\n]*)(?=\n)/g, '$1$2=$3');
r(/( \|)(.{23} )\s*=( [^\n]*)(?=\n)/g, '$1$2=$3');
r(/( \|)(.{22} )\s*=( [^\n]*)(?=\n)/g, '$1$2=$3');
// }
}
//нац.название
if ((txt.indexOf('Национальное название = be/') > -1) && (txt.indexOf('\'\'\' ({{lang-be|') == -1) && (txt.indexOf(', {{lang-be|') == -1)) {
r(/('''[А-Я][^—]+)/g, '$1({{lang-be|}}) ');
}
// немцы
if (txt.indexOf('Страна = Германия') > -1) {
r(/Общая длина реки/g, 'Длина реки —');
r(/, речной индекс [0-9]+/g, '');
r(/\nСистема водного объекта.*?\./g, '');
}
// значения для НП
if ((txt.indexOf('начения|') == -1) && (txt.indexOf('начения}') == -1) && (txt.indexOf('{{НП') > -1) && (txt.indexOf(' состав') > -1) && (document.title.indexOf('(') > -1)) {
if (confirm('Нужен шаблон {{значения}}?')) {
r(/}}\n'''([А-ЯЁ][А-яЁё0-9 -]+[а-яё0-9])'''/g, '}}{{другие значения|$1|тип=топоним}}\n\'\'\'$1\'\'\'');
}
}
// тип=топоним для шаблона:Значения
if ((txt.indexOf('тип=топоним') == -1) && (txt.indexOf('тип=река') == -1) && ((txt.indexOf('начения|') > -1) || (txt.indexOf('начения}') > -1))) {
if (txt.indexOf('{{Река') > -1) {
r(/\{([Дд]ругие значения|[Зз]начения)([^!\n]*?)({{!}})?([^!\n]*?)\}/g, '{другие значения$2$3$4|тип=топоним}');
}
else if (confirm('тип=топоним нужен?')) {
r(/\{([Дд]ругие значения|[Зз]начения)([^!\n]*?)({{!}})?([^!\n]*?)\}/g, '{другие значения$2$3$4|тип=топоним}');
}
}
// водосборный бассейн
r(/([Пп])лощадь(?: её)? (?:\[\[[А-яЁё ]+\|(?:водосборного )?бассейна\]\]|(?:водосборного )?бассейна)(?:\s—)?( около)? (\d)/g, '$1лощадь водосборного бассейна —$2 $3');
if (txt.indexOf('|Страна = Россия') > -1) {
r(/площадь водосборного бассейна.*?([тысяч,\.\d]+)\sкм²\.(\s)/g, 'площадь водосборного бассейна — $1 км²<ref name="ГВР"/>.$2');
}
// длина
r(/Протяж[её]нность(\sреки)?(\s—)?(\sоколо)?\s([,\d]+)/g, 'Длина реки — $4');
// викификикация областей и России
r(/ река в ([А-Я][а-я]+)ской области (\[\[Россия\|России\]\]|России)/g, ' река в [[$1ская область|$1ской области]] [[Россия|России]]');
// Этимология
r(/== Этимология (названия|гидронима)/g, '== Этимология');
// == Карты ==
r(/(===|==) Карты (===|==)/g, '$1 Топографические карты $2');
// притоки (км от устья)
r(/(===|==) Притоки \(км от устья\) (===|==)/g, '$1 Притоки $2\n\'\'(указано расстояние от устья)\'\'');
// название без скобок в карточке
r(/(\|Название *=.*?) *(<br>)? *\(.*?\)/g, '$1');
// gpska
r(/(?:\[|{{)[^\[{]*gpska.+?map=([^\s]+).+?(?:\]|}})/g, '{{карта|$1|ГГЦ}}');
// g151
r(/(?:\[|{{)[^\[{]*g151.+?\/([K-R])(\d\d)-([\d,]+)%.+?(?:\]|}})/g, '{{карта|$1-$2-$3}}');
// шаблон карта
r(/>[^<]*?Топографическая карта ([A-T]-[0-9][0-9]-[0-9IVX][^. \]]*).+?</g, '>{{карта|$1}}<');
r(/.*Топографическая карта ([A-T]-[0-9][0-9]-[0-9IVX][^. \]]*).+/g, '* {{карта|$1}}');
r(/(\{\{карта\|[^\}]*?\-)0{1,2}([^\}]*?\}\})/g, '$1$2');
r(/(\{\{карта\|[^\}]*?),0{1,2}([^\}]*?\}\})/g, '$1,$2');
r(/(\|[K-S]-[0-9]+-[XVI]+)-/g, '$1,');
// БКБ
r(/>[^<]*Блак[iі]тная.+?(\|\s*страницы\s*=\s*|С\.\s*)([\d—]+).*?</g, '>{{Книга:БКБ|$2}}<');
r(/>[^<]*Блак[iі]тная.+?</g, '>{{Книга:БКБ}}<');
r(/.*Блак[iі]тная.*/g, '* {{Книга:БКБ}}');
// РБАОР
r(/>[^<]*Атлас охотника и рыболова:\s([А-яё]+).+?(страницы\s*=\s*|С\.\s*)([\d—, ]+).+?</g, '>{{РБАОР|$1|$3}}<');
r(/>[^<]*Атлас охотника и рыболова:\s([А-яё]+).+?</g, '>{{РБАОР|$1}}<');
r(/.*Атлас охотника и рыболова:\s([А-яё]+).+?(страницы\s*=\s*|С\.\s*)([\d—, ]+).+/g, '* {{РБАОР|$1|$3}}');
r(/.*Атлас охотника и рыболова:\s([А-яё]+).+/g, '* {{РБАОР|$1}}');
// ЭПБ
r(/>[^<]*Энцыклапедыя прыроды Беларус.+?(том\s*=\s*|Т\.\s*)(\d).+?(страницы\s*=\s*|С\.\s*)([\d—, ]+).+?</g, '>{{Книга:ЭПБ|$2|$4}}<');
r(/>[^<]*Энцыклапедыя прыроды Беларус.+?(том\s*=\s*|Т\.\s*)(\d).+?</g, '>{{Книга:ЭПБ|$2}}<');
r(/.*Энцыклапедыя прыроды Беларус.+?(том\s*=\s*|Т\.\s*)(\d).+?(страницы\s*=\s*|С\.\s*)([\d—, ]+).+/g, '* {{Книга:ЭПБ|$2|$4}}');
r(/.*Энцыклапедыя прыроды Беларус.+?(том\s*=\s*|Т\.\s*)(\d).+/g, '* {{Книга:ЭПБ|$2}}');
//Карточка парка
if (txt.indexOf('{{Парк') > -1 && txt.indexOf('{{Заповед') == -1) {
r(/([ ]+)?\|([ ]+)?([Кк]арта|region|Ширина|[Рр]азмер|на карте google|Районы|Проезд).+\n/g, '');//всегда удалять
r(/<!\-\- координаты \-\->.*\n/g, '');
r(/\n *\| *Регион *= (.*?)\n/g, '\n |Регион = $1\n |Район = \n |Город = \n |Район города = \n');
r(/\n *\| *(Тип|Тип объекта) *= */g, '\n |Тип парка = ');
if (txt.indexOf('|Тип ') == -1) {
r(/ \|Район города = \n/g, ' |Район города = \n |Тип парка = \n');
}
if (txt.indexOf('Позиционная карта') == -1) {
r(/ \|Район города = \n/g, ' |Район города = \n |Позиционная карта = \n');
}
if (txt.indexOf('Национальное название') == -1) {
r(/ \|Название = \n/g, ' |Название = \n |Национальное название = \n');
}
r(/\n *\| *Район *= *\[\[([А-яё\(\)\- ]+)(\|([А-яё\(\)\- ]+))?\]\]/g, '\n |Район = $1');
r(/\n *\| *Исторический район *= */g, '\n |Исторический район = ');
r(/\n *\| *Основан *= */g, '\n |Основан = ');
r(/\n *\| *Архитектор *= */g, '\n |Архитектор = ');
r(/\n *\| *Площадь *= */g, '\n |Площадь = ');
r(/\n *\| *Метро *= */g, '\n |Метро = ');
r(/\n *\| *Посетители *= */g, '\n |Посетители = ');
r(/\n *\| *Статус *= */g, '\n |Статус = ');
r(/\n *\| *Сайт *= */g, '\n |Сайт = ');
}
//удаление кадастра из Ссылок
r(/\n== Ссылки ==\n\* {{ГИС.+?}}/g, '');
//упаковка РПВ ГИ в шаблон
r(/\* Ресурсы поверхностных вод СССР\. Гидрологическая изученность\..*?Стр\.\s*(\d\d).+/g, '* {{книга:РПВ ГИ|5|страницы = $1}}');
r(/\* Ресурсы поверхностных вод СССР\. Гидрологическая изученность\..+/g, '* {{книга:РПВ ГИ|5|страницы = }}');
//біятлолн
if (txt.indexOf('{{Биатлонист') > -1) {
r(/\[\[[Гг]онка преследования\|/g, '[[Гонка преследования (биатлон)|');
r(/\[\[([Гг]онка преследования\])/g, '[[Гонка преследования (биатлон)|$1');
}
r(/\n( *)\|( *)Рост_Вес( *)= *(\d+) *\(?(?:\[\[см\]\]|см)?\)? *[\/,] *(\d+) *\(?(?:\[\[кг\]\]|кг)?\)?/g, '\n$1|$2Рост$3 = $4 см\n$1|$2Вес$3 = $5 кг');
//ш:книга, тест (загл / автор'' загл — место: изд, год, с. С. isbn)
/* if (txt.indexOf('книга') > -1) {
if (confirm('заменить на шаблон книга то, что получится?')) {
r(/([^/]...>) *?\[(http[^ ]+?) (?:([\(\)А-яЁё .,:«»-]+)\/)? *(?:'')?([А-яЁё .,-]+)(?:'')? *([\(\)А-яЁё .,:«»-]+?)?— *([^:\d]+?) *: *(?:([^,\d]+),)? *(?:(\d\d\d\d)[., —-]*)?(?:(\d+) *с[., —]+)?(?:[Сс][. ]+(\d+)[., ] *)?[ —]*?(?:ISBN ([\dX-]+))?(.*?)\](?=<)/g,
'$1{{книга |автор = $4 |заглавие = $3$5 |язык = ru |ответственный = |ссылка = $2 |место = $6 |издательство = $7 |год = $8 |том = |страниц = $9 |страницы = $10 |isbn = $11}}$12');
r(/([^/]...>) *?(?:([\(\)А-яЁё .,:«»-]+)\/)? *(?:'')?([А-яЁё .,-]+)(?:'')? *([\(\)А-яЁё .,:«»-]+?)?— *([^:\d]+?) *: *(?:([^,\d]+),)? *(?:(\d\d\d\d)[., —-]*)?(?:(\d+) *с[., —]+)?(?:[Сс][. ]+(\d+)[., ] *)?[ —]*?(?:ISBN ([\dX-]+))?(.*?)(?=<)/g,
'$1{{книга |автор = $3 |заглавие = $2$4 |язык = ru |ответственный = |ссылка = |место = $5 |издательство = $6 |год = $7 |том = |страниц = $8 |страницы = $9 |isbn = $10}}$11');
r(/\* \[(http[^ ]+?) (?:([\(\)А-яЁё .,:«»-]+)\/)? *(?:'')?([А-яЁё .,-]+)(?:'')? *([\(\)А-яЁё .,:«»-]+?)?— *([^:\d]+?) *: *(?:([^,\d]+),)? *(?:(\d\d\d\d)[., —-]*)?(?:(\d+) *с[., —]+)?(?:[Сс][. ]+(\d+)[., ] *)?[ —]*?(?:ISBN ([\dX-]+))?(.*?)\]/g,
'* {{книга |автор = $3 |заглавие = $2$4 |язык = ru |ответственный = |ссылка = $1 |место = $5 |издательство = $6 |год = $7 |том = |страниц = $8 |страницы = $9 |isbn = $10}}$11');
r(/\* (?:([\(\)А-яЁё .,:«»-]+)\/)? *(?:'')?([А-яЁё .,-]+)(?:'')? *([\(\)А-яЁё .,:«»-]+?)?— *([^:\d]+?) *: *(?:([^,\d]+),)? *(?:(\d\d\d\d)[., —-]*)?(?:(\d+) *с[., —]+)?(?:[Сс][. ]+(\d+)[., ] *)?[ —]*?(?:ISBN ([\dX-]+))?(.*?)\n/g,
'* {{книга |автор = $2 |заглавие = $1$3 |язык = ru |ответственный = |ссылка = |место = $4 |издательство = $5 |год = $6 |том = |страниц = $7 |страницы = $8 |isbn = $9}}$10\n');
}
}
*/