如何实现将每一行拆分成一个单词数组,同时使用 perl 保留单词中的任何空格

问题描述 投票:0回答:0

我正在尝试使用 Perl 逐行解释文件行,并且每一行都将其分成几个词。但是有些单词包含空格,我想在拆分行时保留这些空格。我能做什么?

代码示例:

open(my $fh, '<', 'myfile.txt') or die "Can't open file: $! ";

while (my $line = $fh>) {*

Chomp $line

My @words = Split(" ', $line);

# Do something using @words

}

close($fh);

在上面的代码中,当文件中的一行包含带空格的单词时,使用 split() 函数根据空格分隔符将这些行分成不同的单词。单词中的任何空格都将被删除。例如,“Hello world”这行“你好吗?”可以分为数组('Hello', "world", '"How', 'are you?'')。

我想做的是将每一行分成一系列单词,然后保留单词中的任何空格。例如,在我们上面的场景中,理想的输出将是 ('Hello", "world", '"How are you? "').

我可以做些什么来修改我的代码来完成这个?

我想在使用 while 循环时从大文件中打印匹配的内容,但它没有打印它挂起

预期产出:

('你好", "世界", '"你好吗?"')

我的输出:

('你好','世界',''怎么样','你好吗?'')

perl memory while-loop system large-files
© www.soinside.com 2019 - 2024. All rights reserved.