【发布时间】:2014-04-16 00:00:26
【问题描述】:
希望这次转发没有什么大问题,我只是需要一些额外的信息,但在第一次时不知何故溜走了。
在我正在处理的程序中,我试图获取一个 txt 文件,然后打印包含在一对引号中的 txt 位。
以下是我所拥有的。 (假设我已将 txt 文件放入一个数组中,每行作为一个数组元素。)它可以工作,但如果一行有 2+ 个字符串,显然它只会打印第一个。
打印所有匹配项的简洁方式是什么?
我尝试遍历$1、$2、$3 等,并打印它们if ne "";。但这似乎不起作用。
txt file contents:
Lorem ipsum dolor sit amet
consectetur "adipisicing elit"
sed "do" eiusmod tempor "incididunt"
ut "labore et dolore" magna aliqua
CODE:
foreach(@arr)
{
print "$1\n" if /(".*?")/g;
}
【问题讨论】:
-
你有转义引号吗?
"this is an \"escaped\" quote"。还是引用字符串中的换行符?
标签: arrays regex perl printing