重点节取字符,删除字符

解决方案 »

  1.   

    if Pos('你好',str) > 0 then Showmessage('在里面!');
    delete(str,1, 3);
      

  2.   

    对于单字节串:
    楼上的方式在绝大多数时候是有效的,在子串不含有中文字符时绝对有效。因此建议用多字节串如WideString类型。例如:    if Pos('吹', '按倒') > 0 then
            ShowMessage('Delphi中的Pos函数对于子串为单个汉字的情况需要特别注意!');
      

  3.   

    而用WideString类型则没有这样的问题,因为汉字和西文都作为两个字节存储和操作。
      

  4.   

    cnsuyong(小可)说得非常非常有道理。处理使用WideString来操作外,Delphi也提供了一套以Ansi开头的函数,专门来处理多自己字符的问题。比如,解决'吹' '按倒'问题可以使用:function AnsiPos(const Substr, S: string): Integer;—————————————————————————————————
    宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
    —————————————————————————————————
      

  5.   

    相关函数有: Pos, Delete, Insert, Copy 等等.
    字符串类型有: ShortString, AnsiString, WideString.
      

  6.   

    我觉得要处理中文的字串最好还是先转换为WideString,免得出错。 但这样会不会增加内存啊。