2

有没有办法选择<br>给定类的段落后面的所有标签?IE<p class="myclass">This is a paragraph</p><br>

HTML 中可能还有其他内容<br>,所以我不能使用它:

br {display:none;} 

而且我无法删除所有<br>标签。如果有办法选择这些特定<br>标签,那么我可以使用 CSS。

大约有 700 页,我不想通过每一页来确定是否<br>需要。我知道在“myclass”类的段落之后不需要它。

如果无法选择这些标签,那么我认为我可以使用 BBEdit 进行搜索并使用正则表达式进行替换。但我不知道如何编写可行的 RE。

TIA,琳达

4

3 回答 3

2
p.myClass+br {display:none;}

这将选择与<br>元素直接相邻的所有<p class="myClass">元素。如果您需要比这更动态的东西,您需要正则表达式。

于 2010-10-19T23:24:41.557 回答
0

假设您想使用正则表达式删除<br>一个段落后面的所有标签,该类名为myclass

搜索:(<p\b[^><]\sclass\s=\s*["']?myclass["']?[^><]>.?<\/p>\s*)<br\s*/?>

用。。。来代替:$1

请注意,您必须确保pHTML 文档中的所有标签都正确关闭。

于 2010-10-20T03:09:18.177 回答
0

假设 BBEdit 类似于 TextWrangler,您可以使用内置的 Find 对话框。

转到搜索>查找...(Command + F),执行“搜索”</p><br>和“替换为” </p>,然后使用窗口底部的“多文件搜索”选项来选择您的文件。

这不是一个正则表达式,但既然你说你使用的是 BBEdit,它是由 Bare Bones 制作的,据说与 TextWrangler 有很多共享,它应该可以工作。(否则只需免费下载 TW)。它甚至会为您提供一个不错的弹出窗口,告诉您它发现和替换了什么,以防您想要查看等。

有关 BBEdit 的搜索和其他有趣功能的更多信息,请参阅此页面

于 2010-10-20T00:20:33.030 回答