Получить подстроку между токенами - PullRequest
1 голос
/ 15 января 2012

Не могли бы вы объяснить, как получить подстроку между токенами [ и ;

Исходная строка:

a [
    b [
        text1;
        text2;
        c [
            text3;
            text4;
        ]
    ]
]

И что я хочу:

text1;
text2;
text3;
text4;

1 Ответ

2 голосов
/ 15 января 2012

Быстрый подход - поиск сзади 100 *, затем поиск '[', начиная с этой позиции, и разделение результирующей строки на точки с запятой. Повторяйте тот же процесс, пока не найдете точку с запятой ';'.

Лучшим подходом было бы написать простой парсер рекурсивного спуска с одним правилом: обнаружение было бы намного более надежным, если бы присутствовали ошибки в источнике.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...