Показать сообщение отдельно
  #12 (permalink)  
Старый 04.08.2022, 19:53
Аватар для Alikberov
Кандидат Javascript-наук
Отправить личное сообщение для Alikberov Посмотреть профиль Найти все сообщения от Alikberov
 
Регистрация: 16.08.2018
Сообщений: 109

A если так?
<html>
<head>
<script>
var	WholeWord = /[абвгдеёжзийклмнопрстуфхцчшщъыьэюя]+/ig;
var	Prefixes = /^(над?|объ?|отъ?|пере|подъ?|по|предъ?|при|про|разъ?|рас|со)/i;
function Separatist(part, pos, text) {
	var	slab, next, seps = [];
	var	pref;
	pos += part.match(/^\s*/)[0].length;
	part = part.replace(/^\s+/, "");
	while((pref = part.match(Prefixes)) && pref[0] != "") {
		seps.push(pref[0]);
		part = part.substr(pref[0].length);
	}
	if(slab = part.match(/^й[ао][дшк]+[аеёиоуыэюя]?/)) {
		seps.push(part.substr(0, slab[0].length));
		part = part.substr(slab[0].length);
	}
	while(part.length) {
		if(slab = part.match(/^[бвгджзклмнпрстфхцчшщ]+[аеёиоуыьэюя](й|[бвгджзклмнпрстфхцчшщ]+[ъь]?$)/i)) {
			seps.push(slab[0]);
			part = part.substr(slab[0].length);
		} else
		if(slab = part.match(/^[бвгджзклмнпрстфхцчшщ]+[аеёиоуыьэюя]?/i)) {
			if(next = part.substr(slab[0].length).match(/^[бвгджзклмнпрстфхцчшщ][ъь]?[аеёиоуыэюя]?/i)) {
				if(!next[0].match(/[аеёиоуыэюя]/i))
					slab[0] += next[0];
			}
			seps.push(slab[0]);
			part = part.substr(slab[0].length);
		} else
		if(slab = part.match(/^[аеёиоуыэюя][бвгджзклмнпрстфхцчшщь]*/i)) {
			if(slab[0].length > 1 && part.charAt(slab[0].length).match(/[аеёиоуыэюя]/i))
				slab[0] = slab[0].substr(0, slab[0].length - 1);
			seps.push(slab[0]);
			part = part.substr(slab[0].length);
		} else {
			seps.push(part);
			part = "";
		}
	}
	if(seps.length > 1 && seps[0].length == 1)
		seps[0] = seps.shift() + seps[0];
	if(seps.length > 1 && seps[seps.length - 1].length == 1)
		seps[seps.length - 2] = seps[seps.length - 2] + seps.pop();
	return seps.join("\u0082\u00AC");
}
</script>
</head>
<body onload='document.getElementById("separated").textContent = document.getElementById("text").value.replace(WholeWord, Separatist)'>
<textarea id=text rows=11 cols=120 oninput='document.getElementById("separated").textContent = this.value.replace(WholeWord, Separatist)'>
И я постоянно спрашиваю представителей Литкома, группы, ведь это мнение важно. Мы можем посмотреть у других
местностей, какие есть проекты, например, как те же открытки. Он затрагивает денежный ресурс. мы можем все это
напечатать и сделать, но что если они группам не нужны войлок, йодомарин в йошкар-оле?
И только вот эта связь через представителя группы с Комитетом осуществляет продуктивность, как я это понимаю
сегодня и как я понимал, когда был Литкомом группы. Мы просим приносить обратную связь, потому что проводится
много мероприятий, бывают периодически опросы переводческого Комитета, ZOOM собрания, где регионы просят
обратную связь и Литком — связующее звено.
Наше служение — не только обеспечение литературой. Мало кто знает, что девяносто процентов всех денег АН идут с
продажи литературы. Для миссий на развитие, рабочие поездки, обеспечение БУ Комитета литературой. Деньги на это
идут с продажи литературы. И вот обо всем об этом рассказывет Литком, ведь новички приходят и те, кто выбирается
на служение о многом не знают.
</textarea>
<hr />
<pre id=separated></pre>
</body>
Правда, для более грамотного переноса по правилам нужно ещё добавить обращение к словарю.

Последний раз редактировалось Alikberov, 05.08.2022 в 16:53.
Ответить с цитированием