Многие сообщения предполагают, что для вложенных фигурных скобок REGEX НЕ МОЖЕТ ДЕЛАТЬ ЭТО. SIMPLY COUNT THE BRACES: Например, см. Регулярное выражение для обнаружения завершаемого терминалом C ++ for & amp; while loops
Вот полный образец python для итерации строки и подсчета:
# decided for nested braces to not use regex but brace-counting
import re, string
texta = r'''
nonexistent.\note{Richard Dawkins, \textit{Unweaving the Rainbow: Science, Delusion
and the Appetite for Wonder} (Boston: Houghton Mifflin Co., 1998), pp. 302, 304,
306-309.} more text and more.
This is a statistical fact, not a
guess.\note{Zheng Wu, \textit{Cohabitation: An Alternative Form
of Family Living} (Ontario, Canada: Oxford University Press,
2000), p. 149; \hbox{Judith} Treas and Deirdre Giesen, ``Title
and another title,''
\textit{Journal of Marriage and the Family}, February 2000,
p.\,51}
more and more text.capitalize
'''
pos = 0
foundpos = 0
openBr = 0 # count open braces
while foundpos <> -1:
openBr = 0
foundpos = string.find(texta, r'\note',pos)
# print 'foundpos',foundpos
pos = foundpos + 5
# print texta[pos]
result = ""
while foundpos > -1 and openBr >= 0:
pos = pos + 1
if texta[pos] == "{":
openBr = openBr + 1
if texta[pos] == "}":
openBr = openBr - 1
result = result + texta[pos]
result = result[:-1] # drop the last } found.
result = string.replace(result,'\n', ' ') # replace new line with space
print result
Несколько раз даже я ввожу Ctrl+Alt+L, не работает в XML, таким образом, нашел этот способ заставить его работать.
Переходят к Настройкам-> Редактор-> Стиль кода-> Избранное Значение по умолчанию-> хорошо.
Для Вашей ссылки см. снимок экрана:
У меня был опыт с помощью Ctrl + Высокий звук + L в Windows, что этот ярлык не работал вообще, потому что он был зарезервирован другим программным обеспечением, работающим в фоне; который я понял позже.
я решил упомянуть эту проблему, поскольку я думал, что это может быть полезно...