|
|
1
4
这个问题是学术性的——没有必要
编辑:我想说的是你会
从未
需要使用
如果这确实编译了,
任何时候你试图匹配一个EOL与
|
|
2
4
根据中的答案 perlfaq6 - How can I pull out lines between two patterns that are themselves on different lines? ,这是一行的样子:
这个
但是,如果您正在处理一个子例程,它使您能够灵活地选择要提取的标记,那么
|
|
|
3
4
当正则表达式变得过于复杂时,它们可能是错误的工具。我可以考虑在这里使用触发器操作符。它是假的,直到它的左手边是真的,然后一直是真的,直到它的右手边是真的。这样,只需查看单个行,就可以选择从何处开始和结束提取:
如果您使用的是Perl5.10,那么可以使用通用的行尾
不要挂在锚链末端。 |
|
|
4
1
也许
我还没有测试过,所以您可能需要调试它。但我认为这将阻止
|
|
|
5
1
虽然我已经接受了阿兰·摩尔的回答(瑞安·汤普森的回答也会把这个技巧搞得太糟,我只能接受一个),但我还是想把解决方案说得非常清楚,因为它被埋没在评论和讨论中。下面的Perl脚本演示了Perl正在使用$在任何字符进入美元符号时插入变量,并且关闭插值将允许将$视为EOL。
脚本生成以下输出:
|