Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Выделение подстроки по контексту

Delphi , Синтаксис , Текст и Строки

Вот 2 функции которыми я очень часто пользуюсь - они выделяют из строки подстроку, которая находится до или после ключевого словаю Задача надо сказать частая, например есть строка:
 
"Total-2.00$"
 
Нижеприведенные функции позволяют выделить из строки логические элементы:
 
Code:
function GetBefore(substr, str:string):string;
{©Drkb v.3(2007): www.drkb.ru,
®Vit (Vitaly Nevzorov) - nevzorov@yahoo.com}
begin
if pos(substr,str)>0 then
  result:=copy(str,1,pos(substr,str)-1)
else
  result:='';
end;
 
function GetAfter(substr, str:string):string;
{©Drkb v.3(2007): www.drkb.ru,
®Vit (Vitaly Nevzorov) - nevzorov@yahoo.com}
begin
if pos(substr,str)>0 then
  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 (www.delphist.com, www.drkb.ru, www.unihighlighter.com, www.nevzorov.org)

В статье описывается функции GetBefore и GetAfter на языке Delphi, позволяющие выделять подстроки в строке по контексту, т.е. найти подстроку до или после ключевого слова.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Текст и Строки ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-01-28 05:39:18/0.0031349658966064/0