正则表达式:反向引用

时间:2010-04-05 16:28:18

标签: regex sed backreference

sed 's/^\(\h*\)\(.*\)$/\1<!-- \2 -->/' web.xml

我认为这应该采取这个xml:

<a>
  <d>
    bla
  </d>
</a>

然后把它变成:

<!-- <a> -->
  <!-- <d> -->
    <!-- bla -->
  <!-- </d> -->
<!-- </a> -->

但是这样做是什么:

<!-- <a> -->
<!--   <d> -->
<!--     bla -->
<!--   </d> -->
<!-- </a> -->

1 个答案:

答案 0 :(得分:1)

使用[ \t]*代替\h*,如下所示:

sed 's/^\([ \t]*\)\(.*\)$/\1<!-- \2 -->/' web.xml

Here是sed的逃逸(元)字符列表。