首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >nginx subsfilter regex删除一个html标签

nginx subsfilter regex删除一个html标签
EN

Stack Overflow用户
提问于 2013-07-08 23:08:52
回答 1查看 3K关注 0票数 0

我使用nginx subs过滤器模块从页面中删除html标记。

标签是:

代码语言:javascript
运行
复制
<div id="header"> 

紧跟其后的是:

代码语言:javascript
运行
复制
 <div id="mainscreen">

我试过了:

代码语言:javascript
运行
复制
subs_filter <div\ id=\"header\">.*<div\ id\"mainscreen\"> <div\ id=\"mainscreen\"> r;
subs_filter <div\ id=\"header\">(.*)<div\ id\"mainscreen\"> <div\ id=\"mainscreen\"> r;
subs_filter <div\ id=\"header\">(.*?)<div\ id\"mainscreen\"> <div\ id=\"mainscreen\"> r;
subs_filter <div\ id=\"header\">(.*?\n)*<div\ id\"mainscreen\"> <div\ id=\"mainscreen\"> r;

但一切都没有改变。

下面是我想要删除的内容:

代码语言:javascript
运行
复制
<div id="header">
<div id="topline">
<div class="topleft">

    <a class="about-link" onclick="UI.show_about(this);return false" id="rcmbtn100" href="#">A propos</a>
        </div>

<div class="topright">

        <span class="username">michee.test@test.com</span>
    <a class="button-logout" id="rcmbtn101" href="./?_task=logout" onclick="return rcmail.command('switch-task','logout',this,event)">Déconnexion</a>

</div>
</div>

<div id="topnav">
<div id="taskbar" class="topright">
<a class="button-mail" id="rcmbtn102" href="./?_task=mail" onclick="return rcmail.command('switch-task','mail',this,event)"><span class="button-inner">Courriel</span></a>
<a class="button-addressbook" id="rcmbtn103" href="./?_task=addressbook" onclick="return rcmail.command('switch-task','addressbook',this,event)"><span class="button-inner">Carnet d'adresses</span></a>

<a class="button-settings" id="rcmbtn104" href="./?_task=settings" onclick="return rcmail.command('switch-task','settings',this,event)"><span class="button-inner">Paramètres</span></a>
<a class="button-logout" id="rcmbtn105" href="./?_task=logout" onclick="return rcmail.command('switch-task','logout',this,event)"><span class="button-inner">Déconnexion</span></a>
<span class="minmodetoggle"></span>
</div>
<img src="skins/larry/images/roundcube_logo.png" id="toplogo" border="0" alt="Logo" onclick="rcmail.command('switch-task','mail');return false;">
</div>

<br style="clear:both" />
</div>




<div id="mainscreen">
EN

回答 1

Stack Overflow用户

发布于 2013-07-09 00:07:21

subs_filter <div\ id=\"header\">[\s\S]*<div\ id=\"mainscreen\"> <div\ id=\"mainscreen\"> r;

你错过了=。我不会使用其他3个正则表达式中的任何一个,因为您不需要捕获标签之间的内容。

请注意,这将擦除<div id="header"><div id="mainscreen">之前的所有内容,而不管它们在同一个html页面上相隔多远。如果你想要一个更精确的正则表达式,那就给出一个实际html的例子。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17530077

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档