我正在寻找一种简单的方法来匹配字符串列表(从filter.txt加载)的内容与单个字符串。
让我们说字符串是'bla bla bla random words dog cat mouse random words',我的字符串列表的内容是:
房屋建筑舱
狗猫小鼠
椅子座椅吊床
由于'dog cat mouse'在我的stringlist中,我想要ShowMessage('匹配找到!')
任何人都有一个简单的例子,如果没有过滤器区分大小写怎么做? 如果单个字符串是'dog.cat.mouse',我不需要匹配。
答案 0 :(得分:1)
您只需遍历TStringList
并使用AnsiContainsText
(不区分大小写)或AnsiCompareStr
(区分大小写)。例如,如果Str
是您要搜索的字符串,而SL
是TStringList
,则可以使用以下内容:
var
i: Integer;
Found: Boolean;
begin
Found := False;
for i := 0 to SL.Count - 1 do
if AnsiContainsText(Str, SL[i]) then
begin
Found := True;
Break;
end;
if Found then
// SL[i] is the string that matched
end;
可以在AnsiContainsText
单元中找到AnsiCompareStr
和StrUtils
。