Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Атрибуты HTML тэга


Автор: artemiy 27.1.2009, 12:30
Есть строка, представляющая собой определенный HTML тэг, например 
Код

<input value="" name="test_field" id="test_field" type="text" onblur="this.value=some_function()">

Как можно легко (кроме pos(), posEx() и т.п.) определить значения определенных атрибутов этого тэга?

P.S. В регулярных выражениях я не силен, поэтому был бы рад если их использование будут советовать вместе с примером smile

Автор: cemick 27.1.2009, 13:42
Пример использования регулярных выражений:
Код

//Функция возвращает значение атрибута
function GetValue(AName:string):string;
  var  r : TRegExpr;
  const
    regex = '%s=[\s]*[''"](.*?)[''"]';
  begin
     r := TRegExpr.Create;
     try
        r.Expression := Format(regex, [AName]);
        r.InputString := '<input value="" name="test_field" id="test_field" type="text" onblur="this.value=some_function()">';

        with r do
        begin
          ModifierS := true;
          ModifierX := true;
          ModifierI := true;
        end;
        if r.Exec then
        begin
          Result := r.Match[1];
        end;
     finally
        r.Free;
     end;

   end;

К компоненту RegExpr есть неплохой хелп... 

Автор: artemiy 27.1.2009, 18:46
Спасибо, буду пробовать smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)