如果TRichEdit中的文字是这样的;
'hello, world'#$D#$A
Run Code Online (Sandbox Code Playgroud)
然后以下例程显示TRUE.但是当RichEdit有
'test'#$D#$A#$D#$A'test'#$D#$A#$D#$A'test'#$D#$A
Run Code Online (Sandbox Code Playgroud)
然后例程显示FALSE.在我看来它是有缺陷的,因为它找到了逗号,但不是新行/换行.我创建了一个解决方法来代替字符串并找到我正在寻找的内容,但我仍然很好奇为什么Delphi函数不起作用.有任何想法吗?
procedure TForm1.Button1Click(Sender: TObject);
var
sTmp : String;
begin
sTmp := RichEdit1.Lines.GetText;
if ( ( Pos( ',', sTmp ) <> 0 ) or
( Pos( '"', sTmp ) <> 0 ) or
( Pos( '\n', sTmp ) <> 0 ) or
( Pos( '\r', sTmp ) <> 0 ) ) then
Label1.Caption := 'TRUE'
else
Label1.Caption := 'FALSE';
end;
Run Code Online (Sandbox Code Playgroud)
function CheckChars( const sData: String ): Boolean;
var
pCur : PChar;
begin …Run Code Online (Sandbox Code Playgroud)