我有一个类似下面的文件HTML:
<tr>
<td>SOMETHING1</td>
<td>SOMETHING2</td>
<td>SOMETHING3</td>
</tr>
<tr>
<td>SOMETHING1</td>
<td>SOMETHING2</td>
<td>SOMETHING3</td>
</tr>
<tr>
<td>SOMETHING1</td>
<td>SOMETHING2</td>
<td>SOMETHING3</td>
</tr>
</table>
<br>
</div>
<a href="javascript:;" onmousedown="toggleDiv('20161023');">Sunday 23 ... </a></h3>
<br>
<div class="time_div" id="20161023" style="display:none">
<p class="dep_parag">Test automation on Sunday 23 October</p>
<table id="table" border="1" cellpadding="3" cellspacing="0">
<tr>
<td>SOMETHING1</td>
<td>SOMETHING2</td>
<td>SOMETHING3</td>
</tr>
<tr>
<td>SOMETHING1</td>
<td>SOMETHING2</td>
<td>SOMETHING3</td>
</tr>
<tr>
<td>SOMETHING1</td>
<td>SOMETHING2</td>
<td>SOMETHING3</td>
</tr>
正如您所看到的,有一个表行列表除以带有一些javascript的部分(该部分以 开头并以 结束)
这只是一个包含300.000多个表行的html页面的提取!
我要删除带有javascript的部分,因为我需要一个很长的表行列表,干净,它们之间没有任何内容。
而不是手动操作,这很疯狂,我想要一些东西(正则表达式)只需点击一下即可清理文件(我用它在NOTEPAD ++上运行简单的正则表达式,但这个对我来说有点困难)
我在考虑类似的事情:
将 中的所有行删除为 cellspacing =“0”&gt;
或者
删除 中的所有行,然后删除8行。
有人可以这么温柔地帮助我使用这个正则表达式吗?
非常感谢! :)
答案 0 :(得分:2)
假设您没有关注不规则的空白,那么搜索模式如何:
</table>.*?<table.*?>
空白&#34; 替换为&#34;字符串,勾选&#34; 正则表达式&#34;和&#34; 。匹配换行&#34;选项。
答案 1 :(得分:1)
我不太明白你要删除的部分(我的理解是从</table>
到cellspacing="0">
?),但它应该相当容易。你的意思是这样的吗?
<a href="javascript([^\n]+\r\n){5}
答案 2 :(得分:1)
这个正则表达式将用于标记 s 单行用于php,python,用于java启动表达式,带有 DOTALL 选项
\<\/table\>.+?(?=javascript\:\;).+?(?=\<table.+?cellspacing\=\"0\"\>)\<table.+?cellspacing\=\"0\"\>