[英]split an html file keeping only the part above a delimiter in ruby
我有一個html文件,其中包含充當分隔符的字符串,我想-分割該文件並僅保留分隔符上方的部分-關閉新文件中所有打開的html標簽。
用ruby(或unix)做到這一點並保持效率的最佳方法是什么。
在此先感謝Nicolas
如果我正確理解了您的問題,那么您想要做的就是將HTML文件中位於定界符之前的部分存儲在字符串中,例如:
<html>
<head>
<title>Blah</title>
</head>
<body>
<p>Some stuff</p>
<!-- Delimiter --!>
</body>
</html>
您想要<!-- Delimiter --!>
之前的所有內容
在這種情況下,您可以執行以下操作:
str = ""
File.open("the_file.html","r"){|f|str << f.read} #If you need to read the html out of a file
part_to_keep = str.split("<!-- Delimiter --!>").first
讓我知道這是否是您所需要的。
對於Unix版本,您可以使用perl一線式,如下所示:
perl -n -e 'print if $delim;
$delim=1 if ($delim or /<!-- Delimeter --!>/);' html_file >output
這可以通過使用前哨變量$ delim來檢測是否已看到分隔符。 然后將打印定界符之后的所有行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.