什么是搜索内存流(和多个字符串)中的字符串,返回true或false最简单的方法?
Answer 1:
var ms:TMemoryStream;
strS:TStringStream;
aStr:string;
aPos:integer;
found:boolean;
begin
ms:=TMemoryStream.Create;
ms.LoadFromFile('c:\aFile.txt');
strS:=TStringStream.Create;
strS.LoadFromStream(ms);
aPos:=pos(aStr,strS.dataString);
found:=aPos>0;
end;
TStringStream是一个经常忘词,但非常有用的工具 - 比PChars中,等来得容易,更安全
对于多次搜索,无论是使用ackwardly环POS,子串等或使用正则表达式。
此代码工作正常在Delphi XE,虽然TStringStream已经很老了 - 不知道这是否是兼容Unicode编码。
(这个例子是漏 - 我离开了为了简洁起见,在最终化代码)
文章来源: Delphi: Easiest way to search for string in memorystream