查找模式加下一行

时间:2016-01-28 10:43:23

标签: regex find sublimetext

包含一些PHP的HTML文件

<div class="container-fluid">
  <div class="row">
    <div class="page-header header_site">
      <h1><font>ABC Company</font></h1>
    </div>
  </div>
</div>

我想找到<table> <tbody> <tr> <td>td1</td> <td>td2</td> </tr> <tr> <td colspan="3"> <?php echo 'something' ?> </td> <td> <?php echo echo 'something' ?> </td> <td> <?php echo 'something' ?> </td> </tr> </tbody> </table> + 下一行之后的所有<?php

(此处不是<td ...>而不是td1

方法:

td2 ...也匹配(?s)(<td.*?>)+(\n)<td>td1</td>

<td>td2</td>之后会发生什么?

1 个答案:

答案 0 :(得分:1)

要移除<?php...?>,您可以(<td[^>]*>)\s*<\?php.*?\?>替换$1

enter image description here

解释

(<td[^>]*>)              # store in $1 what you want to retrieve
\s*                      # also match what you want to remove
<\?php.*?\?>             # the php content

然后,当$1替换时,它只会删除依赖于\s*<\?php.*?\?>的{​​{1}}

希望它有所帮助。