Freemaker Replace函数的正则表达式运用
replace(param1,param2,param3) param1 正则表达式;param2 将匹配的字符替换成指定字符;param3 模式 param3 参数如下
i: Case insensitive: 忽略大小写 f: First only. That is,replace/find/etc. only the first occurrence of something. r: The substring to find is a regular expression.标准正则表达式(http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html) m: Multi-line mode for regular expressions. In multi-line mode the expressions ^ and $ match just after or just before,respectively,a line terminator or the end of the string. By default these expressions only match at the beginning and the end of the entire string. Note that ^ and $ doesn't match the line-break character itself. s: Enables dot-all mode for regular expressions (same as Perl singe-line mode). In dot-all mode,the expression . matches any character,including a line terminator. By default this expression does not match line terminators. c: Permits whitespace and comments in regular expressions.在正则表达式中允许空格和注释。 范例如下: 输出结果: foo bAr XYar 更多范例: 原文:str = 2积分兑换30元优惠券 ${str?replace('bd+积分','','r')} 输出:兑换30元优惠券 ps:freemarker的replace功能 替换字符串 replace |
${s?replace(‘ba
',‘XY'
)}
将s里的所有的ba替换成xy 规则参数包含: i r m s c f 具体含义如下:
|