【发布时间】:2012-10-05 13:41:41
【问题描述】:
我想提取一个给定字符串和一个或多或少随机字符串之间的行。 该文件看起来像:
\\\\\
\\\\\ start
\\\\\
lines
to
extract
\\\\\
\\\\\ <any string> (must not be start but could be sta*)
\\\\\
直到现在,在没有明确知道第二个字符串的情况下,我无法获得这两者之间的线条。 通过使用 \w 或 [a-zA-Z] 将第二个字符定义为任何可能的字符,perl 似乎两次匹配第一行,因此只打印“ ----- start ”作为结果。
到目前为止它看起来像这样:
open(FILE,'<','file.txt') or die "Could not open: $!";
while(<FILE>){
print $_ if (/^\\{5} start$/ .. /^\\{5} [a-zA-Z]/);
}
输出是:
\\\\\ start
希望有一些想法。
【问题讨论】: