【发布时间】:2012-11-06 22:01:49
【问题描述】:
我正在尝试清理一些 HTML,然后只删除一个标签(我真的很想避免使用 nokogiri 等)。所以我想摆脱以下字符串:
<div class="the_class>Some junk here that's different every time</div>
这在我的字符串中只出现一次,我想找到一种方法来删除它。我尝试想出一个正则表达式来捕获所有内容,但我找不到一个有效的。
我已经尝试过 /<div class="the_class">(.*)<\/div>/m 并且可行,但它也会匹配并包含文档中的任何其他 </div> 标记,这是我不想要的。
关于如何解决这个问题的任何想法?
【问题讨论】:
-
为什么要避免使用像 Nokogiri 这样的解析器,因为它可以让你想做的事情变得更容易?
-
@theTinMan 因为它增加了另一个依赖项并减慢了我的工作速度。让事情变得更复杂。此外,此解决方案不仅适用于 HTML 标签。我的开始和结束字符串可以是任何东西。
标签: ruby regex string html-sanitizing