Помогите грамотно написать следующий снипет:
Код:
Присваиваем переменным значение
1.1 ПРисвоить переменной var1 значение регулярного выражения 1
1.2 ПРисвоить переменной var2 значение регулярного выражения 2
1.3 ПРисвоить переменной var3 значение регулярного выражения 3
1.4 ПРисвоить переменной var4 значение регулярного выражения 4
1.5 ПРисвоить переменной var5 значение регулярного выражения 5
2.0 пропарсить переменную var регулярным выражением переменной var1; если количество совпадений = 1, то:
2.1.1 Если переменная var1 не пуста, пропарсить переменную var регулярным выражением переменной var1, результат положить в переменную var7
2.1.2 Если переменная var2 не пуста, пропарсить переменную var регулярным выражением переменной var2, результат добавить в переменную var7 через пробел
2.1.3 Если переменная var3 не пуста, пропарсить переменную var регулярным выражением переменной var3, результат добавить в переменную var7 через пробел
2.1.4 Если переменная var4 не пуста, пропарсить переменную var регулярным выражением переменной var4, результат добавить в переменную var7 через пробел
Если количество совпадений >1, то:
2.2.0 Очистить переменную var7
2.2.1 Если переменная var1 не пуста, пропарсить переменную var регулярным выражением переменной var1 номер совпадения соответствует счетчику count==0, результат положить в переменную var6
2.2.2 Если переменная var2 не пуста, пропарсить переменную var регулярным выражением переменной var2 номер совпадения соответствует счетчику count==0, результат добавить в переменную var6 через пробел
2.2.3 Если переменная var3 не пуста, пропарсить переменную var регулярным выражением переменной var3 номер совпадения соответствует счетчику count==0, результат добавить в переменную var6 через пробел
2.2.3 Если переменная var4 не пуста, пропарсить переменную var регулярным выражением переменной var4 номер совпадения соответствует счетчику count==0, результат добавить в переменную var6 через пробел
2.2.4 Присвоить переменной var7 значение "var7; var6" (без кавычек)
2.2.5 увеличить значение счетчика count на 1.
2.2.6 Повторить пункт 2.2.1, если результат парсинга непустое значение то повторить пункты 2.2.1-2.2.4
2.2.7 Повторить пункт 2.2.5 Выход из цикла, если результат парсинга в пункте 2.2.1 пустое значение.
2.2.8 Если переменная var5 не пуста, пропарсить переменную var регулярным выражением переменной var5, взять первое совпадение и положить его в переменную var8
2.2.9 Присвоить переменной var7 значение "var7 var8" (без кавычек)
Например:
1.1 var1=(?<=<family>).*?(?=</family>)
1.2 var2=(?<=<name>).*?(?=</name>)
1.3 var3=(?<=<otch>).*?(?=</otch>)
1.4 var4=(?<=<age>).*?(?=</age>)
1.5 var5=(?<=<total>).*?(?=</total>)
Для текста: <name>Иванов</name><family>Сергей</family><otch>Петрович<otch><age>37<age>
на выходе имеем переменную var7 = Иванов Сергей Петрович 37
Для текста: <name>Иванов</name><family>Сергей</family><otch>Петрович<otch><age>37<age><name>Васечкин</name><family>Юрий</family><otch>Антонович<otch><age>16<age><name>Яковлев</name><family>Павел</family><otch>Александрович<otch><age>25<age><total>115</total>
На выходе имеем переменную var7 = Иванов Сергей Петрович 37; васечкин Юрий Антонович 16; Яковлев Павел Александрович 25 115