在模式加上下一行之后查找
Find after pattern plus next line
在包含一些 PHP 的 HTML 文件中
<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>
我想找到 <td ...>
+ 下一行 之后的所有 <?php
。
(这里不是td1
也不是td2
)
方法:
(?s)(<td.*?>)+(\n)
... 也匹配 <td>td1</td>
和 <td>td2</td>
(?s)(<td.*?>)
之后是什么?
要删除 <?php...?>
,您可以将 (<td[^>]*>)\s*<\?php.*?\?>
替换为 </code>:</p>
<p><a href="https://i.stack.imgur.com/IHAfb.png" rel="nofollow noreferrer"><WBIMG:2999305-1.png></a></p>
<p>解释:</p>
<pre><code>(<td[^>]*>) # store in what you want to retrieve
\s* # also match what you want to remove
<\?php.*?\?> # the php content
然后当替换为 </code> 时,它将仅删除 <code>\s*<\?php.*?\?>
,这取决于 <td>
希望对您有所帮助。
在包含一些 PHP 的 HTML 文件中
<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>
我想找到 <td ...>
+ 下一行 之后的所有 <?php
。
(这里不是td1
也不是td2
)
方法:
(?s)(<td.*?>)+(\n)
... 也匹配 <td>td1</td>
和 <td>td2</td>
(?s)(<td.*?>)
之后是什么?
要删除 <?php...?>
,您可以将 (<td[^>]*>)\s*<\?php.*?\?>
替换为 </code>:</p>
<p><a href="https://i.stack.imgur.com/IHAfb.png" rel="nofollow noreferrer"><WBIMG:2999305-1.png></a></p>
<p>解释:</p>
<pre><code>(<td[^>]*>) # store in what you want to retrieve
\s* # also match what you want to remove
<\?php.*?\?> # the php content
然后当替换为 </code> 时,它将仅删除 <code>\s*<\?php.*?\?>
,这取决于 <td>
希望对您有所帮助。