我有一个下面的代码片段,我想在文件名列表中使用完整路径匹配文件名(带.cpp或.hpp或.h或.c)后缀,并输出那些与另一个匹配的文件文件。 这里 fh_full_path_file_list - 是具有完整路径的文件的文件句柄 例如,文件的内容如下。
--
E:\P4\NTG5\ONOFF\imp/ntg5/onoff/HeadSystem/OnOffMOSTLogDev/private/COnOffMostComHUComponent.cpp
E:\P4\NTG5\ONOFF\imp/ntg5/onoff/HeadSystem/OnOffMOSTLogDev/private/COnOffMostComHUImpl.cpp
E:\P4\NTG5\ONOFF\imp/ntg5/onoff/HeadSystem/Executor/src/ntg5-starter.hpp
--
fh_file_name_list - 是仅包含文件名的文件的文件句柄。
DSIDTimeMngRootAttrMoCCAStream.cpp
DTimeMngRootAttr.hpp
DTimeMngRootAttr.hpp
匹配表达式m / Q $ search_string即使存在匹配的文件名也不起作用。
- 代码段 -
while ($a_file_name = <$fh_file_name_list>) {
#search for file name in full_path_file_list.txt
while ($a_full_path_file_name = <$fh_full_path_file_list>) {
my $text_to_search = $a_full_path_file_name;
my $search_string = $a_file_name;
if($text_to_search =~ m/\Q$search_string/) {
print $fh_onoff_target_file_list "$a_full_path_file_name \n";
}
}
}