Programowanie w języku Delphi » Artykuły

WildMatch

Witam!

Zauwazylem ze nie ma w tym serwisie opisu jak w Delphi zrobic tzw. WildMatch czyli sprawdzic czy dany string pasuje do maski np. "*ala*ko?*" do takiej maski bedzie pasowal tekst np. "ala ma kota" lub "Mala kobieta" itp. Przydatne jest to w pisaniu programow do szukania plikow czy pewnych wartosci..
W delphi sluzy do tego klasa TMask z modulu Masks.

Przyklad:

uses Masks;
 
...
 
function WildMatch(str, mask: String): Boolean;
var
  cMask: TMask;
begin
  cMask := TMask.Create(mask);
  try
    Result := cMask.Matches(str);
  finally
    cMask.Free;
  end;
end;


Polecam przejrzec sobie Masks.pas jak on to robi ;)
Moze ten tekst sie komus przyda :)
Pozdrawiam!

[Dodalem w zalaczniku plik Masks.pas, poniewaz nie wszyscy go posiadaja.. u mnie byl w katalogu %Delphi%\Source\Vcl\Masks.pas]

9 komentarzy

brodny 2005-02-24 22:18

Hehe różnica między obiektem a klasą też jest :P A przyczepiłem się do tego \"objektu\" bo dużo ludzi właśnie tak pisze - jako że w angielskim jest to \"object\" - vide podstawowa klasa w Object Pascalu - TObject. Ale to tak na marginesie, można to olać ;P

Japcok 2005-02-03 00:27

"Zauwazylem ze nie ma w tym serwisie opisu jak w Delphi zrobic tzn. WildMatch"

chyba tzw a nie tzn ?

_TeStON_ 2005-02-02 23:38

Heheh.. co do OBIEKTU to nie wiem.. byc moze tak bylo juz nie pamietam bo zmienilem na "klasa".. :D A co do modulu to dodalem go jako zalacznik.. :)
Pozdrawiam!

Bełdzio 2005-02-02 09:24

ps nie każdy ma plik Masks.pas :P jak masz na zbyciu to możesz mi podesłać :D

pawwell 2005-02-01 23:29

lol...jemu chodziło, że źle napisałeś słowo "obiekt" - nie przez j tylko i... :D

_TeStON_ 2005-02-01 18:58

ohh ;) no dobra klasa, wydawalo mi sie ze jest stworzona na TObject dlatego tak napisalem.. a zreszta co za roznica? Wiesz jak ja wykorzystac, masz zrodlo.. wystarczy.. :) Naprawde nie masz sie czego czepiac :)

brodny 2005-02-01 18:23

OBIEKT - NIE OBJEKT!!!