假设我有几千个HTML文件,其中包含一些文本(文章,实际上)。此外,假设这些HTML中有各种各样的脚本,样式,计数器,其他废话,在实际文本之上。
我的任务是将一切从一开始就替换为某个标记 - 即,我们从<head>
开始,以<div class="StoryGoesBelow">
结束/ p>
<html>
<head>
</head>
<body>
块。
我可以做任何正则表达式吗? Vim的?还有其他编辑吗?脚本语言?
感谢。
答案 0 :(得分:1)
最简单的正则表达式是(?s)\A.*?(?=<div class="StoryGoesBelow">)
(假设您要保留<div>
标记)。将其替换为您问题中的文字。
<强>解释强>
(?s) # Allow the dot to match newlines
\A # Anchor the search at the start of the string
.*? # Match any number of characters, as few as possible
(?=<div class="StoryGoesBelow">) # and stop right before this <div>
当然,如果文本<div class="StoryGoesBelow">
也可能出现在实际标记之上的注释或文字字符串中,那么这将失败。