'delphi中替换问题我想定义一个变量
var s:string;begin
s:=' 'alt="点击这里给我发消息"></a>' ;
end
变量中间 有个 ’  两个' 中间 加个一个变量本身的 ’ 就无法实现了我想应该 再变量中定义 '应该有个字符 代替的吧 求解

解决方案 »

  1.   

    '''alt="点击这里给我发消息"> </a>' ;
      

  2.   

    procedure TForm1.Button1Click(Sender: TObject);
    var s:string;begin
     s:=' '''+'alt="点击这里给我发消息"> </a>' ;
    showmessage(s);
    end;
      

  3.   

    在Delphi中,字符串变量使用左右两个单引号('号)引起来的表示实际的字符串内容。
    所以单引号是Delphi语言的一个保留字。
    但是又有一种情况:字符串内容中也包含一个或多个单引号,这种情况下怎么办呢?
    Delphi规定:字符串内容中如果需要有单引号的,那么使用两个单引号表示一个字符。(其实这两个单引号可以理解为前面的单引号为转义符,后面的单引号为实际内容,类似于C语言的\'表达形式)
    例:
      S为字符串类型变量,相设置其内容为abc'def
      由于实际的字符串中有一个单引号,所以在写字符串表达式的时候需要写成这样的形式
      abc''def
      而字符串变量需要左右两个单引号括起来,那么最终的表达形式为
      S:='abc''def';
      类似的:
      S:='''abcdef';其值实际上是'abcdef
      S:='abcdef''';其值实际上是abcdef'
      S:='''';其值实际上是'
      S:=''''+'a'+'''';其值实际上是'+a+',
                       即值最终结果为'a'
      

  4.   

    具体到楼主的问题:
    如果需要设置S的值为'alt="点击这里给我发消息"> </a> 
    将实际值的单引号替换为两个单引号,然后再加上左右单引号括起来即可:
    S:='''alt="点击这里给我发消息"> </a>'
    类似的,
    如果需要设置S的值为'alt='点击这里给我发消息'> </a> 
    将实际值的单引号替换为两个单引号,然后再加上左右单引号括起来即可:
    S:='''alt=''点击这里给我发消息''> </a>'如果需要设置S的值为'alt=''点击这里给我发消息''> </a> 
    将实际值的单引号替换为两个单引号,然后再加上左右单引号括起来即可:
    S:='''alt=''''点击这里给我发消息''''> </a>'
      

  5.   

    wooden954
       好强