У меня есть анализатор файлов, который оценивает каждую строку txt файла по условию. Если условие выполнено, последующие строки в файле оцениваются по ряду вложенных операторов IF. Что я хотел бы сделать, так это выйти из вложенных операторов IF, как только родительское условие будет выполнено снова, затем оценить строку, которая сломалась против родителя, и снова запустить вложенные оценки. Я делаю это, потому что все вложенные операторы IF извлекают данные о родительском элементе. когда я нажимаю другой родительский элемент, избегаю дочерних оценок и начинаю снова.
это плохой способ справиться с ситуацией?
вот мой псевдокод
if (line.Contains(":rule ("))
{
bInRuleFlag = true;
while (bInRuleFlag == true)
{
if (line.Contains(":rule ("))
{
bInRuleFlag = false;
// I have hit a parent element.
// escape the while loop here and evaluate line against the parent IF
}
else if (line.contatins(""))
{
//gets child elements to the rule
}
else if (line.contatins(""))
{
//gets child elements to the rule
}
}
}
Я был бы признателен за любые советы о том, как лучше это сделать, если это неправильно.