Я пытаюсь заменить символы в математической среде их полужирными версиями. К сожалению, эти символы встречаются и в остальной части текста.
Мой текст:
text text text text Gtext G G text ....
\begin{align}
f&=gG \\
G &= tG
\end{align}
text textG text $G$ text.
Каждый Г внутри
\ begin {align} \ end {align}
и между знаками доллара
$ G $
должны быть заменены на
\ mathbf {G}.
Остальные должны остаться нетронутыми.
Я ценю каждую идею:)
Спасибо
БОЛЬШОЕ РЕДАКТИРОВАНИЕ:
Пока у меня есть рабочая программа (Python), благодаря совету и некоторым другим выводам в stackoverflow.
Но программа заменяет f.e \ quad на \ q "заменить" на . если я хочу заменить все "u" s на "replace" .
from tempfile import mkstemp
from shutil import move
from os import remove, close
import shutil
def replace(file, outputfile, pattern, subst, boundary1, boundary2):
#Create temp file
fh, abs_path = mkstemp()
newfile="tempfile.tmp"
new_file = open(newfile,'w')
old_file = open(file)
inAlign=False
for line in old_file:
if boundary1 in line:
inAlign = True
if inAlign:
print line
print line.replace(pattern, subst)
new_file.write(line.replace(pattern, subst))
else:
new_file.write(line)
if boundary2 in line:
inAlign = False;
#close temp file
new_file.close()
close(fh)
old_file.close()
shutil.move(newfile,outputfile)
replace("texfile.tex","texfile_copy.tex","G", "\\mathbf{G}", "\\begin{align}", "\\end{align}")
Надеюсь, я правильно отформатировал ...