![]() |
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。
脚本生成以下输出:
|
![]() |
Manny · 如何比较Perl中的字符串? 2 年前 |
![]() |
BioRod · 我不能用Perl打印键和值 2 年前 |
![]() |
user17227456 · Perl CLI代码无法追加字符串行 2 年前 |
![]() |
LearnToBeBetter · 读取文件,搜索字符串,打印字符串 2 年前 |
![]() |
KJ7LNW · 一些波斯语文本的宽字符印刷,但其他文本则没有 2 年前 |
![]() |
con · 如何搜索大型数据结构并返回一系列给出特定值的键/数组? 3 年前 |
![]() |
Pranay Nanda · 使用regex解析许可证文件 6 年前 |