下面说一下我自己的一个更复杂的例子:
<a href="{:U('uuuuuuuuaaaa/ss')}"><i class="icon-edit"></i>编辑店铺设置</a> </dd>
要替换成
<a href="{:U('aaa/uuuuuuuuaaaa/ss')}"><i class="icon-edit"></i>编辑店铺设置</a> </dd>
那么就要把 U('aaa/uuuuuuuuaaaa/ss') 分成三截,对于 TRegExpr 来说,语法是将三个部分用 "()" 符号括起来,但这当中本身就有括号,根据正则表达式的语法需要先转换成 "\(" 或者 "\)" 同时这里面还有 "'" 单引号,经过多次测试,这个单引号是不用加转义符号的,所以分割成三部分的匹配语句就是
(:U\(')([A-Za-z0-9_]+\/[A-Za-z0-9_]+)('\))
而要替换成的内容很简单,使用 $1 $2 ... 替换符号就可以了。这里要注意的是,默认的 TRegExpr 中并没有开启替换符号,需要将替换函数的最后一个设置为 true 才可以。所以有以下
$1u$2$3
或者这个例子的
$1aaa/$2$3
还要注意的是匹配语句中的 "/" 要写成 "\/",不过在替换结果表达式中却可以不用。
而 "[A-Za-z0-9_]+" 中的 "+" 号最重要,表示至少有一个字符,而且可以是很多个,语法可见于 http://www.jb51.net/article/97732.htm