当前位置: 首页 > 知识库问答 >
问题:

使用正则表达式查找中心标签之间的所有内容

庄瀚玥
2023-03-14

所以我使用一个供应商应用程序,它使用regex从我的站点中删除代码。我有一个完整的div,我想使用regex控件找到并删除它,但是当我尝试时,换行和div挡住了我的路。有人有想法吗?我正在努力。?但是就像我说的,用断线来思考,它会阻止它收集所有的东西。

<center>
<div id="divSiteFooter">
<div class="container darkblue">
<div class="row">
<div class="twocol">
<h3>Experience</h3>
</div>
<div class="twocol">
<h3>Access</h3>
</div>
<div class="twocol">
<h3>Assistance</h3>
</div>
<div class="twocol">
<h3>Inquire</h3>
</div>
<div class="fourcol last">
<h3>Connect</h3>
</div>
</div>
</div>
<div class="container darkerblue">
<div class="twocol">
<ul>
<li><a href="/Experience-Avalon/">Avalon Choice Cruising</a></li>
<li><a href="/Cruise-Vacations/">Our Cruises</a></li>
<li><a href="/River-Cruise-Ships/">Our Fleet</a></li>
<li><a href="/interactive-suite/">Photos & Videos</a></li>
<li><a href="/Affiliations/">Awards and Affiliations</a></li>
</ul>
</div></div></div>
</center>

共有2个答案

薛兴言
2023-03-14

你试过regex修饰符(或者匹配模式)multiline来搜索换行符吗?

http://www.regular-expressions.info/anchors.html#multi

鞠晋
2023-03-14

要么使用

<center>[\s\S]+?</center>

或打开单线DOTALL模式(如果可用)匹配任何字符,包括换行符,

(?s)<center>.+?</center>

打开< code>singleline模式的方式因语言/工具而异,但是添加< code > (?s)添加到正则表达式的开头,可以处理其中的许多内容(但不是Javascript)。

进一步评论

最好包含打开的div标签,以确保您删除了正确的中心元素。即。

<center>\s*<div id="divSiteFooter">[\s\S]+?</center>
 类似资料:
  • 问题内容: 在2个标签之间选择所有文本的最佳方法是什么-例如:页面上所有“ pre”标签之间的文本。 问题答案: 您可以使用,(用所需的任何文本替换pre)并提取第一组(对于更具体的说明,请指定一种语言),但这只是假设您拥有非常简单且有效的HTML。 正如其他评论者所建议的那样,如果您要执行复杂的操作,请使用HTML解析器。

  • 问题内容: 我真的很希望能够允许Beautiful Soup匹配任何标签列表,就像这样。我知道attr接受正则表达式,但是美丽的汤中有什么可以让您这样做的? 输出: 我的目标是创建一个可以从站点抓取表格的刮板。有时标签的名称不一致,我希望能够输入标签列表来命名表的“数据”部分。 问题答案: 是Beautiful Soup搜索API中最受欢迎的方法。 您可以传递各种过滤器。另外,传递列表以查找多个标

  • 我对正则表达式很陌生,正在寻找一个匹配任何东西的表达式,除了所有匹配给定正则表达式的东西。我已经找到了除了特定字符串以外的任何东西的方法,但是我需要它不匹配一个正则表达式。它还必须在Java工作。 背景:我正在使用ANSI颜色的字符串。我想取一个字符串,它有一些文本,可能是用Ansi颜色代码格式化的,并删除除那些颜色代码以外的任何东西。这将给出附加到字符串上的任何字符的当前颜色格式。 格式化字符串

  • 问题内容: 在中,我想找到标记以及两者之间的所有内容,如下所示: 我想找到标记以及之间的所有内容,然后将其删除。 标签之间的所有内容都是变量,但是我想在获得时删除整个标签和子标签。 有人知道该怎么做吗? 问题答案: 使用正则表达式进行HTML / XML解析不是一个好主意… 但是,如果仍然要执行此操作,请搜索正则表达式模式 并将其替换为空字符串…

  • 我有以下字符串: 如果您将它格式化得很好,您将会看到类似这样的内容: 所以我有一堆锚标签,它们之间有断点。在每个锚的文本中,我想删除管道字符和文件类型: 狗-00.jpg|图像/JPEG 变成 dog-00.jpg 正则表达式也应该适用于所有未来的文件类型,例如: dog-01.docx|应用/vnd.openxmlformats-officedocument.wordprocessingml.d

  • 我的PHP脚本具有以下格式的函数,但我需要找到i8n中的所有字符串。 使用一些正则表达式,我设法获得了接近我想要的结果。 对于这种情况,RegEx是完美的。当同一行上有其他内容并最终合并结果时,就会出现问题。 我如何获得每一个单独?