Мне нужна небольшая помощь, потому что я полностью потерял обзор.
Я преобразовал PDF в формат HTML и теперь хочу заменить в нем слова. Regex до сих пор хорошо поработал, чтобы сохранить существующее форматирование.
Я сделал это просто. Для сокращения l oop используйте массив array_pop (); пока не будет найдено слово, которое нужно заменить, и я потерял как можно меньше тегов.
теперь у меня чертовски проблема, что не все теги span всегда закрыты, и теперь EWERBUN все еще находится в теге span. что может вызвать проблемы с последующим сокращением, пока не будет найдено заменяющее слово.
до сих пор я успешно использовал это регулярное выражение:
// regex
#<span.*?></span>#
// $content
B<span class="fs4 fc2">EWERBUN<span class="_ _0"></span>G A<span class="_ _0"></span>LS JobBe<span class="_ _0"></span>zeich<span class="_ _0"></span>nung<span class="ff1 fs2 fc0"> </span></span>
// $regex_array
array (size=1)
0 =>
array (size=5)
0 => string '<span class="fs4 fc2">EWERBUN<span class="_ _0"></span>' (length=55)
1 => string '<span class="_ _0"></span>' (length=26)
2 => string '<span class="_ _0"></span>' (length=26)
3 => string '<span class="_ _0"></span>' (length=26)
4 => string '<span class="ff1 fs2 fc0"> </span></span>' (length=41)
$ сокращение содержимого до тех пор, пока слово не будет найдено.
for( $i = 0; $i < count($regex_array[0]); ++ $i ) {
$content = preg_replace('#' . $array_pop($regex_array) . '#', '$2', $content);
if (strpos( $content, 'JobBezeichnung')) {
preg_replace('#JobBezeichnung#', 'UNIVERSALMONTEUR', $content);
}
}
надеюсь понятно, что я ищу. Большое спасибо за любой вклад и любой Regex pro :)