比如读取的文本的内容是:aasdj
khkajsdlsdlasdjlsdhaskjdhaskjd
aasdjkhkajsdlsdlasdjlsdhaskjdhaskjd
aasdjkhkajsdlsdlasdjlsdh
askjdhaskjd
aasdjkhkajsdlsdlasdjlsd
haskjdhaskjd
aasdjkhkajsdlsdlasdjlsdhas
kjdhaskjd
aasdjkhkajsdlsdlasdjlsdhaskjdhaskjd
aasdjkhkajsdlsdlasdjlsdha
skjdhaskjdaasdjkhkajsdlsdlasdjlsdhaskjdhaskjdaasd
jkhkajsdlsdlasdjlsdhaskjdhaskjd如上N行,如何取出里面的a

解决方案 »

  1.   

    if str[i] <> 'a' then str[i] = '';
    最后trim一下就好了
      

  2.   

    写了一个去a的函数,读文本自己弄吧
    function DeleteSubStr(ASub, AStr :string):string;
    var
      _index :Integer;
      _TempStr :string;
      _SubLength :Integer;
    begin
      Result := '';
      if AStr = '' then
        Exit;
      _SubLength := Length(ASub);
      _index := Pos(ASub, AStr);
      while _index > 0 do
      begin
        _TempStr := Copy(AStr, 1, _index - 1);
        AStr := Copy(AStr, _index + _SubLength, Length(AStr) - (_index + (_SubLength - 1)));
        AStr := _TempStr + AStr;
        _index := Pos(ASub, AStr);
      end;
      Result := AStr;
    end;说明:ASub可任意长度,但区分大小写
    调用:Edit2.Text:= deleteSubStr('a', '1aa2aaa3aa4aaaa');
    结果为:1234