Склейка текста

Статус
В этой теме нельзя размещать новые ответы.

Danilka

Читатель
Заблокирован
Регистрация
6 Фев 2008
Сообщения
11
Реакции
2
  • Автор темы
  • Заблокирован
  • #1
Подскажите как можно слить два фрагмента кривого текста:
... устраивалась длительная попойка всех его участников. Очень часто друзья хлебосольного хозяина разъезжались по домам только под утро.
Чтобы читатель получил полное представление об избалованности и самодурстве Кирилы Петровича, автор вводит в повесть эпизод, подробно описывающий псарню помещика, предмет его гордости и восхищения. В псарне этой “... более пятисот гончих и борзых жили в довольстве и тепле, прославляя щедрость Кирилы Петровича на своем собачьем языке.
гончих и борзых жили в довольстве и тепле, прославляя щедрость Кирилы Петровича на своем собачьем языке. Тут же находился и лазарет для больных собак, под присмотром штаб-лекаря Тимошки, и отделение, где благородные с*ки ощенялись и кормили своих щенят”. Какая забота о животных, какое благородство — не правда ли? Да, все это выглядело бы именно так, если бы крепостные люди этого барина, на которых держалось его благосостояние, жили лучше собак или по крайней мере хотя бы так же. ...

в

... более пятисот гончих и борзых жили в довольстве и тепле, прославляя щедрость Кирилы Петровича на своем собачьем языке.Тут же находился и лазарет для больных собак, под присмотром штаб-лекаря ...

Силами PHP
 
1)берешь кусок второго текста длинной n ( определи его по своим данным примерно) -- $str_nachalo_vtor_text

2)ищешь позицию вхождения строки $str_nachalo_vtor_text в первом тексте
3)удаляешь все после этой позиции
4)делаешь конкатенацию


на твоем примере:
1) выбираем n=10
$str_nachalo_vtor_text="гончих и б"
2) ищем позицию вхождения
3) eflztv в первом тексте все после вхождения
"... устраивалась длительная попойка всех его участников. Очень часто друзья хлебосольного хозяина разъезжались по домам только под утро.
Чтобы читатель получил полное представление об избалованности и самодурстве Кирилы Петровича, автор вводит в повесть эпизод, подробно описывающий псарню помещика, предмет его гордости и восхищения. В псарне этой “... более пятисот "
4) склеиваем

код простой
под рукой нет справочника, если что завтра напишу
хотядумаю и сам справишься
 
  • Автор темы
  • Заблокирован
  • #3
Пробую, рабочего кода чтото неполучается, если поможншь буду очень благодарен
 
PHP:
//длина обрывка, который берется из начала второй части для проверки по первой части.
$stringOffset=30;

$string=substr($secondPart,0,$stringOffset);

$result=substr($firstPart,0,strrpos($firstPart,$string)).$secondPart;

самое простое. должно помочь. если что - пиши еще, вариантов много =)
 
  • Автор темы
  • Заблокирован
  • #5
Проверил работает, но проблема в том что смещение ($stringOffset) нефиксированное, те тут надо как либо подругому реализовать.

четырех сторон". И далее: "...И через дорогу за тын перейти/Нельзя, не топча мирозданья". В этих строках — ощущение целостности всего сущего, неразрывной связи жизни человечества и природы.
Природа, мир, тайник вселенной.
йник вселенной.
Я службу долгую твою,
Объятый дрожью сокровенной,
 
есть какие нибудь точные условия-закономерности?
например то что первая часть всегда заканчивается на точку, и размер смежного отрывка не выходит за рамки одного предложения - т.е. одной точки =)

посмотри это все. можно конечно циклически автоматом это все находить, но дольше будет, чем если будут жестко ограниченные рамки =)
 
  • Автор темы
  • Заблокирован
  • #7
Думаю надо сделать типа: поревернуть строку, найти вхождение подстроки в строку, обрезать 2ю троку на эту длинну и склеить

Буду пробовать
 
  • Автор темы
  • Заблокирован
  • #8
Проблему решил, выявил что резалось до точки, Спасибо всем за помощь!
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху