【发布时间】:2016-09-25 11:09:26
【问题描述】:
我想在文件中查找特定模式之后和特定模式之前的单词。 以下是文件中的内容:
print("Hi", "My name is", "Tej");
所以,我想单独获取单词Tej 并将其存储到一个数组中。同样,我有许多与上述模式相似但名称不同的此类文件,因此我想将所有这些名称推送到一个数组中。即我想要来自模式 print("Hi", "My name is", " 之后和模式 "); 之前的文件中的单词。
有时,逗号后面的空格会丢失。
我编写了用于打开文件并将文件句柄传递给函数以搜索模式前后的单词的脚本。函数代码如下:
sub search{
my $file_handle = shift;
while (<$file_handle>)
{
/.print("Hi", "My name is", "[\s]+([A-Za-z_0-9]+)/ ;
push @array, $1;
}
}
我知道正则表达式不起作用,但我不确定如何找到我需要的单词。提供的任何帮助表示赞赏。 谢谢
【问题讨论】: