У меня есть строка с пользовательской разметкой для сохранения песен с аккордами, табулатурами, заметками и т. Д. Она содержит
вещи в разных скобках: \[.+?\]
, \[[.+?\]]
, \(.+?\)
стрелки: <-{3,}>
, \-{3,}>
, <\-{3,}
и так далее…
Пример текста может быть
Text Text [something] ---> Text (something 021213)
Теперь я хочу разобрать разметку в массив токенов, объектов соответствующих классов, которые будут выглядеть (согласованные части в скобках)
ParsedBlock_Text ("Text Text ") ParsedBlock_Chord ("something") ParsedBlock_Text (" ") ParsedBlock_NewColumn ParsedBlock_Text (" text ") ParsedBlock_ChordDiagram ("something 021213")
Я знаю, как их сопоставлять, но либо я должен соответствовать каждому другому шаблону, и сохранять смещения, чтобы правильно сортировать массив, или я сопоставляю их сразу, и я не знаю, какой из них был сопоставлен.
Спасибо, MK