【HSP3】strrep命令を入れ子(ネスト)にすると、意図した動作をしない

バグではなくて、仕様なのかもしれませんが。。。hsp3.5 beta2 にて確認。

バグではなくて、仕様なのかもしれませんが。。。hsp3.5 beta2 にて確認。

  • hk1v
  • 2015/11/28 12:23
  • タグ:
  • タグはありません
#module _Mod_HTML_
// HTML
#defcfunc escapeHtml str html, \
local tmp
;
tmp = html
strrep tmp, "&", "&"
strrep tmp, "<", "&lt;"
strrep tmp, ">", "&gt;"
strrep tmp, "'", "&apos;"
strrep tmp, "\"", "&quot;"
;
logmes tmp
return tmp
#global
;
strHtml = "<b>$A$</b>"
strIns = "><"
;
; <b>$A$</b>
; <b>$A$</b>
mes "☆1: " + strHtml
;
; ※
; &gt;&lt;
; &gt;&lt;
mes "☆2: " + escapeHtml(strIns)
;
; ※ strrep
; $A$
; <b>&gt;&lt;</b>
; &gt;&lt;
strrep strHtml, "$A$", escapeHtml(strIns)
mes "☆3: " + strHtml
;
; ※
; <b>&gt;&lt;</b>
; <b>&gt;&lt;</b>
strHtml = "<b>$A$</b>"
tmp = escapeHtml(strIns)
strrep strHtml, "$A$", tmp
mes "☆4: " + strHtml
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX