Вот 2 функции которыми я очень часто пользуюсь - они выделяют из строки подстроку, которая находится до или после ключевого словаю Задача надо сказать частая, например есть строка:
"Total-2.00$"
Нижеприведенные функции позволяют выделить из строки логические элементы:
Code: |
functionGetBefore(substr, str:string):string; {©Drkb v.3(2007): www. drkb . ru, ®Vit (Vitaly Nevzorov) - nevzorov @ yahoo.com} begin if pos(substr,str)>0then result:=copy(str,1,pos(substr,str)-1) else result:=''; end;
functionGetAfter(substr, str:string):string; {©Drkb v.3(2007): www.drk b. ru, ®Vit (Vitaly Nevzorov) - nevzorov @ yahoo.com} begin if pos(substr,str)>0then result:=copy(str,pos(substr,str)+length(substr),length(str)) else result:=''; end; |
Примеры:
1) Найти название параметра (оно находится до символа "-"):
GetBefore('-', 'Total-2.00$') // Результат будет "Total"
2) Найти сумму денег (оно находится после символа "-"):
GetAfter('-', 'Total-2.00$') // Результат будет "2.00$"
3) Найти сумму денег без знака доллара и остатка строки(оно находится после символа "-", но до символа "$"):
GetBefore('$',GetAfter('-', 'Total-2.00$ (общая сумма)') // Результат будет "2.00"
Автор:Vit
Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.
ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!