Это моя задача — преобразовать несколько специально созданных файлов LaTeX в InDesign. Итак, мой текущий метод: запускаю файлы .tex с помощью PHP-скрипта, который меняет пользовательские коды LaTeX на более общие коды TeX, затем я использую TeX2Word для преобразования их в файлы .doc, а затем помещаю их в InDesign.
Что я хочу сделать с этим preg_replace, так это преобразовать несколько тегов TeX, чтобы TeX2Word не затрагивал их, тогда я вы сможете запустить в InDesign скрипт, который заменяет HTML-теги текстовыми фреймами, сносками, переменными и т. д.
[/UPDATED]< /strong>
У меня есть текст с разметкой LaTeX:
Код: Выделить всё
$newphrase = "\blockquote{\hspace*{.5em}Lorem ipsum dolor sit amet, consectetur
adipiscing elit. Integer posuere erat a ante venenatis dapibus posuere
velit aliquet. Aenean lacinia bibendum nulla sed consectetur. Aenean
eu leo quam. Pellentesque ornare sem lacinia quam venenatis
vestibulum. Sed posuere consectetur est at lobortis. \note{Integer
posuere erat a ante venenatis dapibus posuere velit aliquet.
\textit{Vivamus} sagittis lacus vel augue laoreet rutrum faucibus
dolor auctor.}}";
Итак, я попробовал миллион разных версий этого:
Код: Выделить всё
$regex = "#(blockquote){(.*)(})#";
$replace = "$2";
$newphrase = preg_replace($regex,$replace,$newphrase);
Код: Выделить всё
\\hspace*{.5emLorem ipsum dolor sit amet, consectetur
adipiscing elit. Integer posuere erat a ante venenatis dapibus posuere
velit aliquet. Aenean lacinia bibendum nulla sed consectetur. Aenean
eu leo quam. Pellentesque ornare sem lacinia quam venenatis
vestibulum. Sed posuere consectetur est at lobortis. \note{Integer
posuere erat a ante venenatis dapibus posuere velit aliquet.
\textit{Vivamus} sagittis lacus vel augue laoreet rutrum faucibus
dolor auctor.}}";
Когда я этого хочу игнорировать следующий , если после начального \blockquote{ был еще один {.
Следующая проблема, которую я' У меня есть \ Кажется, я не могу избежать этого! Я пробовал \\, /\\/, \\\, /\\\/, [\], [\\] . Ничего не работает! Я уверен, что это потому, что я не понимаю, как это на самом деле должно работать.
И вот, наконец, вот что я хочу получить в итоге:
Код: Выделить всё
\hspace*{.5em}Lorem ipsum dolor sit amet, consectetur
adipiscing elit. Integer posuere erat a ante venenatis dapibus posuere
velit aliquet. Aenean lacinia bibendum nulla sed consectetur. Aenean
eu leo quam. Pellentesque ornare sem lacinia quam venenatis
vestibulum. Sed posuere consectetur est at lobortis. \note{Integer
posuere erat a ante venenatis dapibus posuere velit aliquet.
\textit{Vivamus} sagittis lacus vel augue laoreet rutrum faucibus
dolor auctor.}";
Любые рекомендации будут ОЧЕНЬ приветствоваться и цениться!
Подробнее здесь: https://stackoverflow.com/questions/100 ... up-to-html
Мобильная версия