2017-01-22 69 views
1

在ColdFusion中使用EncodeForHTML时,哪些字符会执行换行符(\ n)和回车符(\ r)?我尝试了所有我能想到的(或在线查找),但无法找到我需要在REReplace语句中使用的编码(我需要为显示目的执行此操作)转换为中断(br)标签。ColdFusion EncodeForHTML和换行符

我想什么做的是一样的东西

#REReplace(EncodeForHTML(myVar), "html encoded newline etc chars", "<br />", "all")# 

但是,因为我想不通的换行和回车被转换为唯一的办法我可以得到它的它工作在EncodeForHTML之前和之后做一个REReplace,这看起来不是很合理或有效。例如:

#REReplace(EncodeForHTML(REReplace(myVar, "\r\n|\n\r|\n|\r", "<br />", "all")), "&lt;br &##x2f;&gt;", "<br />", "all")# 

我使用CF 10.

回答

1

\ \ r被被编码为&#xd;

n被被编码为&#xa;

所以下面的简化的代码现在工作:

#REReplace(EncodeForHTML(myVar), "&##xa;&##xd;|&##xd;&##xa;|&##xa;|&##xd;", "<br />", "all")#