【发布时间】:2014-10-07 18:46:14
【问题描述】:
在 PHP 中有以下代码
krsort($smileys);
foreach($smileys as $k => $v){
$row['message'] = str_replace($k,'<img src="'.$v.'" />',$row['message']);
}
//place links if allowed
if($display_links == 'yes'){
preg_match('/(http:\/\/[^\s]+)/', $row['message'], $text);
$hypertext = '<a href="' . $text[0] . '" target="_blank">' . $text[0] . '</a>';
$row['message'] = preg_replace('/(http:\/\/[^\s]+)/', $hypertext, $row['message']);
}
我在coldfusion中制作了一个复制品:
<cfset structsort(smileys)>
<cfloop collection="#smileys#" item="k">
<cfset row.message = replace(smileys[k],'<img src="smileys[k]">','all')>
</cfloop>
对于显示链接,我完全迷路了
【问题讨论】:
-
请改用ReReplace,这样您就可以使用与PHP代码中相同的正则表达式。更多关于Regular expression syntax in ColdFusion。
-
我不知道替换应该做什么.. Replace() 作为
Replace(string_to_search,string_to_search_for,string_to_replace_with,scope)工作。您缺少一个参数,因为这只是说 search search_string for search_string 包裹在标记中,它永远不会找到(您无法搜索“o”以获得“”)并替换它如果确实找到了,则使用“全部”
标签: php coldfusion