Парсинг текста по маске - VB
Формулировка задачи:
Добрый день! Спецы парсинга помогите чайнику.
Есть некий текст (tekst), содержащий последовательности символов(наприм $*1) для поиска начала нужного фрагмента текста, который заканчивается в конце строки (до символов "0D 0A"). Пытаюсь выделить- никак.
Вот фрагмент, где тормоз.
tekst=" $*17,5
1 0,5343
2 1,0252
3 1,5145
4 2,0208
5 2,5253
6 3,0148
7 3,5202
"
Нужно выцепить последовательности типа "0,5343" именно после "$*1", которая в дальнейшем другая и, игнорируя
"7,5" получить 0,5343
nns = Mid(tekst, InStr(tekst, "$*1") + 10, 6) - для первой строчки получается
По Instr(tekst,"$*1") нахожу начало фрагмента, +10 на символы "$*1,75" и "0A","0D" 6 на искомое.
А, вот как взять следующие строки, учитывая что крайний левый индекс (до пробела) может быть двузначным, а отсчёт разной длины, например, 12, 2333 или 234,1234? Т.e. 10 и 6 не константы, 7,5 - тоже. Полагаю, ориентироваться нужно после "$*1", учитывая конец строки и пробел. Но..
Описал, как мог подробно. Спасибо.
Решение задачи: «Парсинг текста по маске»
textual
Листинг программы
a=split(tekst,vbcrlf) for i=1 to ubound(a)-1 debug.print split(a(i))(1) next
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д