Freemarker中使用替换标签

Freemarker中使用<object/>替换<embed/>标签

这里前端用Js处理会比较简单,用Freemarker稍微复杂,主要是正则的匹配。

 

[html]  view plain copy
 
  1. [#-- 部分视频使用了<embed/>标签,前台只对<object/>做了适配,此处作相应更改 --]  
  2. [#-- "ri"表示匹配正则,不区分大小写 --]  
  3. [#if txt ?? && txt?index_of("embed")!=-1]  
  4. [#assign txtReplaced=txt?replace('<embed[^>]*data-id="([^"]*)"[^>]*data-url="([^"]*)"[^>]*src="([^"]*)"[^>]*height="([^"]*)"[^>]*width="([^"]*)"[^>]*>',  
  5. '<object type=\"application/x-shockwave-flash\" class=\"edui-faked-video\" style=\"display:none\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" data-id="$1" data-url="$2" src="$3" wmode=\"transparent\" play=\"true\" loop=\"false\" menu=\"false\" allowscriptaccess=\"never\" allowfullscreen=\"true\" height="$4" width="$5" ></object>',"ri") ]   
  6. ${txtReplaced!}  
  7. [#else]  
  8. ${txt!}  
  9. [/#if]  

你可能感兴趣的:(freemarker)