浏览代码

* Replaced 5 StringReplaces with one StringsReplace

git-svn-id: trunk@17755 -
joost 14 年之前
父节点
当前提交
092892ee82
共有 1 个文件被更改,包括 5 次插入13 次删除
  1. 5 13
      packages/fcl-xml/src/htmlelements.pp

+ 5 - 13
packages/fcl-xml/src/htmlelements.pp

@@ -18,7 +18,7 @@ unit htmlelements;
 interface
 
 uses
-  Classes, SysUtils, DOM, HtmlDefs;
+  Classes, SysUtils, DOM, HtmlDefs, strutils;
 
 type
 
@@ -135,22 +135,14 @@ implementation
 
 function EscapeHTML ( const S : String ) : String;
 begin
-  Result := StringReplace(s,      '&', '&',  [rfReplaceAll]);
-  Result := StringReplace(Result, '<', '&lt;',   [rfReplaceAll]);
-  Result := StringReplace(Result, '>', '&gt;',   [rfReplaceAll]);
-  Result := StringReplace(Result, '"', '&quot;', [rfReplaceAll]);
-  Result := StringReplace(Result, #39, '&#39;',  [rfReplaceAll]); // ' - &apos; does not work on ie :(
+  // &apos; does not work on all versions of ie, so do not use it.
+  Result := StringsReplace(s,['&','<','>','"',#39],['&amp;','&lt;','&gt;','&quot;','&#39;'],[rfReplaceAll]);
 end;
 
 function UnescapeHTML ( const S : String ) : String;
 begin
-  Result := StringReplace(s,      '&lt;',   '<', [rfReplaceAll]);
-  Result := StringReplace(Result, '&gt;',   '>', [rfReplaceAll]);
-  Result := StringReplace(Result, '&quot;', '"', [rfReplaceAll]);
-  Result := StringReplace(Result, '&#39;',  #39, [rfReplaceAll]); // '
-  Result := StringReplace(Result, '&apos;', #39, [rfReplaceAll]); // '
-  Result := StringReplace(Result, '&amp;',  '&', [rfReplaceAll]);
-end; 
+  Result := StringsReplace(result,['&amp;','&lt;','&gt;','&quot;','&apos;','&#39;'],['&','<','>','"',#39,#39],[rfReplaceAll]);
+end;
 
 
 { THtmlCustomElement }